python - 名称错误 : name 'mobile' is not defined

标签 python function class

class mobile:
    def __init__(self,brandname,color,isjack):

        self.brand=brandname
        self.color=color
        self.isjack=isjack

    def calling(self):
        print('calling')

    def cameraclick(self):
        print('picture is clicked')

    def message(self):
        print('message_sent')

    def main():

        m1=mobile('apple','black',False)
        print(m1.brand)
        print(m1.color)
        print(m1.isjack)
        m1.calling()
        m1.cameraclick()
        m1.message()   

        print("-------------------")

        m2=mobile('samsung','grey',False)
        print(m2.brand)
        print(m2.color)    
        print(m2.isjack)
        
    if __name__=='__main__':
        main()

我编写了一个基本代码来检查为什么我收到名称错误。如果有人可以帮忙吗?

最佳答案

检查你的缩进。现在,您的 main 函数是 mobile 类的一个(静态)方法。这意味着在 mobile 的类定义完成之前会读取该方法及其内部的所有内容。因此,解释器还不“知道”移动

您还应该减少缩进:

if __name__ == '__main__':
    main()

关于python - 名称错误 : name 'mobile' is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73658653/

相关文章:

python - 用 python 发送电子邮件

function - boost::function 参数的默认值?

c++ - 我应该在哪个源文件中定义一个函数

javascript - 变量未定义 Javascript + Parse.com

python - 添加带有计数的列

python - 在 Python 中打印守护线程异常

php - 奇怪的 PHP 自动加载问题

java - 查找类名冲突和 jar 文件版本差异和冗余

function - 当前类方法名称为字符串

python - Tkinter 网格间距问题