python - Python无法分配对象变量
问题描述
创建类实例时,我尝试通过函数分配变量,但它不起作用。
class Test:
def __init__(self, l):
self.l = l
self.func(self.l) # or I tried self.func(l)
self.z = None
self.y = None
def func(self, l):
self.z = l # doesn't work
self.y = 123 # doesn't work
x = Test('test')
print(x.z) # = None
print(x.y) # = None
有人能解释一下吗,欢迎链接!
解决方案
您正在重新定义self.z
,并且self.y
在None
您使用 定义它们之后func
。摆脱self.z
and self.y
in__init__
class Test:
def __init__(self, l):
self.l = l
self.func(self.l) # or I tried self.func(l)
# These are redefining the variables, comment out
# self.z = None
# self.y = None
def func(self, l):
self.z = l
self.y = 123
推荐阅读
- kubernetes - 在 namespaceSelector 中带有 OR 选项的 NetworkPolicy
- list - Haskell中列表生成的奇怪结果
- python - 特征选择:嵌套交叉验证之后还是期间?
- python - 为什么 matplotlib 不能识别我在 xaxis 上的时间戳?
- ios - 如何将 json 响应从一个视图控制器传递到另一个故事板中的另一个视图控制器
- c# - Xpath 返回 nav/ul/li/a/herf
- sql - 对多个表执行查询
- java - 如何为我放置的每个谷歌地图标记打开不同的回收站视图活动
- reactjs - onSubmit 不适用于 react-bootstrap 表单
- node.js - 猫鼬填充不起作用。如何解决?