2024-04-27 15:19:23 发布
网友
我对这段代码很失望,我读过一些文章,但似乎我没有弄明白:
class c: def __init__(self): self.k = [9, 8] def a(x): k = c() x = k.k l = [1, 9] a(l) print l # expects [9, 8], got [1, 9]
更新,我发现了一个相当流氓的方法:
我很难告诉你想做什么。让我做一些假设并指出一些事情。在
您更正的代码:
class C: # by convention, Python classes are capitalized... def __init__(self): self.k = 10 def a(self, x): # you need 'self' to refer to what instance x[1] = self.k
现在你可以做我认为你想做的事情:
属性k与c具有相同的作用域,因此,如果您希望.k是全局的,请将c设为全局:
k
c
.k
>>> c.k 10 >>> c.k=22 >>> c.k 22
我很难告诉你想做什么。让我做一些假设并指出一些事情。在
您更正的代码:
现在你可以做我认为你想做的事情:
^{pr2}$属性
k
与c
具有相同的作用域,因此,如果您希望.k
是全局的,请将c
设为全局:相关问题 更多 >
编程相关推荐