- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在"Artificial Intelligence: A modern approach"中遇到过代码存储库下面是我以前从未见过的代码:
def __init__(self, state, parent=None, action=None, path_cost=0):
"Create a search tree Node, derived from a parent by an action."
update(self, state=state, parent=parent, action=action,
path_cost=path_cost, depth=0)
if parent:
self.depth = parent.depth + 1
他们似乎正在使用update
函数来重新定义构造函数的参数,以允许使用替代参数。我查遍了代码,没有找到一个名为update
的自定义函数。 python 中允许这样做吗?网上没找到。
最佳答案
这不是 Python 的 built-in functions 之一,因为它没有在本地定义或列在:
import math, random, sys, time, bisect, string
(呃!)它必须来自文件中唯一的其他导入
:
from utils import *
(这就是为什么 the style guide 说“应该避免通配符导入,因为它们使得命名空间中存在哪些名称变得不清楚”...)。
<小时/>checkin that file我们发现:
def update(x, **entries):
"""Update a dict; or an object with slots; according to entries.
>>> update({'a': 1}, a=10, b=20)
{'a': 10, 'b': 20}
>>> update(Struct(a=1), a=10, b=20)
Struct(a=10, b=20)
"""
if isinstance(x, dict):
x.update(entries)
else:
x.__dict__.update(entries)
return x
<小时/>
此函数的使用稍微简化了其他情况下的情况:
def __init__(self, state, parent=None, action=None, path_cost=0):
"Create a search tree Node, derived from a parent by an action."
self.state = state
self.parent = parent
self.action = action
self.path_cost = path_cost
self.depth = 0
if parent:
self.depth = parent.depth + 1
关于python - 更新 python 构造函数中的 fct,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30631351/
回答this question about overload resolution with enums时出现了这个问题. 虽然 long long 的情况肯定是 MSVC2012NovCTP 中的错
回答this question about overload resolution with enums时出现这个问题. 虽然 long long 的情况绝对是 MSVC2012NovCTP 中的一个
我努力让 lambda 函数通过引用返回一个值,而不复制引用值。我下面的代码示例说明了这个问题。它编译并运行正常,但是使用“//”注释行而不是上面的行,它没有。我找到了两种解决方法(均在我的示例中进行
我在"Artificial Intelligence: A modern approach"中遇到过代码存储库下面是我以前从未见过的代码: def __init__(self, state, pa
我正在 Google Apps 脚本中运行某个函数,有时它会超时并停止运行。我想添加一些东西来检查(连续或每 x 秒一次)我的函数是否正在运行,如果没有,则启动它。对此最好的解决方案是什么? 基本上,
[dcl.fct.default]/10 : A virtual function call (10.3) uses the default arguments in the declaration
[dcl.fct.default]/3 (重点是我的): A default argument shall be specified only in the parameter-declaration
我知道,例如 void *(*myFuncName)(void*) 是一个函数指针,它接受并返回 void*。 这是一个有两个参数的指针吗?void 指针是该类型的另一个返回 void* 和 void
DR 2145 中提出的更改负责[dcl.fct.def.general]/2的变化从C++14到C++17,如下: C++14: The declarator in a function-defin
我正在为我的 Android 手机开发一个应用程序,我正在尝试启用 Wifi 热点。我正在使用 Qt 5.4.1,所以我用 C++ 开发。由于在 NDK 中没有任何函数可以执行此操作,因此我使用 JN
C++14 中的§12.3.2 [class.conv.fct]/1: A member function of a class X having no parameters with a name
我是一名优秀的程序员,十分优秀!