python - Python 的 __init__(self) 方法是否在所有其他类/实例方法之前由解释器定义?

标签 python python-2.7 python-3.x interpreter

#例如:

class example(object):

    def someFunction():
        print("I am some function")

    def __init__(self,x,y):
        self.x = x
        self.y = y
        someFunction()

为什么此代码会生成 someFunction 未定义的错误? 是不是因为python的解释器在执行def someFunction代码之前先执行了def init代码块?我认为python的执行顺序是自上而下的方法。任何见解将不胜感激。

最佳答案

您还需要在其前面加上 self 前缀:

def __init__(self,x,y):
    self.x = x
    self.y = y
    self.someFunction()

关于python - Python 的 __init__(self) 方法是否在所有其他类/实例方法之前由解释器定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37797794/

相关文章:

python - 日期时间 : conversion from string with timezone name not working

python - 高级 Python 键盘事件?

python - 估计器预测无限循环

python - 如何指定scapy启动文件?

Python 使用虚拟类来应用通用的 "pipe"模式

python - 如何在 Python 中检查另一个字典中是否存在值的键(如一个字典中所定义)?

python - 在 pandas DataFrame 中每组选择 1 个 True,1 个 False

python - 从彭博社提取财务数据

python3 http.server 响应无效(Postman 和其他工具)

python - 调用 serve_forever() 时打印语句不起作用?