Discuss / Python / 为什么我的windows程序会报错?

为什么我的windows程序会报错?

Topic source

GUK0

#1 Created at ... [Delete] [Delete and Lock User]

以下是报错结果,这个代码是在命令行下敲得,代码语法没有错误。 我的python是3.6 32win版本的。

AttributeError: Can't get attribute 'run_proc' on <module '__main__' (built-in)>

西子note

#2 Created at ... [Delete] [Delete and Lock User]

我的WINDOWS也是,不知道什么原因。求高手解答~

西子note

#3 Created at ... [Delete] [Delete and Lock User]

现在可以了,需要先把代码保存成py文件,然后再在命令行里运行。 如何在cmd里运行py文件 参考廖老师前面的章节。

BIN6167

#4 Created at ... [Delete] [Delete and Lock User]

AttributeError: Can't get attribute 'runproc' on <module '_main' (built-in)> 解释器已经说明了错误类型和内容,因为你在cmd上敲的代码,并不是执行导入外部model测试的,所以解释器内置的model'main'并没有这个run_proc这个属性。 而需要你新建一个model定义run_proc属性。

BIN6167

#5 Created at ... [Delete] [Delete and Lock User]

补充下,刚才解释的有问题。 ~ 如果你是直接在Python交互行直接定义函数run_proc, 和导入Process类并创建一个实例传入run_proc函数, 而if __name__='__main__'为真, 运行p = Process(target=run_proc, args=('test',))会出错。 显然解释器内置的module并没有run_proc这个属性。 ~ AttributeError: Can't get attribute 'run_proc' on <module '__main__' (built-in)>就是在描述此错误。 ~ 如果你是新建模块,在其中加入了run_proc属性,此时直接执行这个模块,可以使用定义的属性了。


  • 1

Reply