python – 当我尝试调用我的函数时,为什么会出现NameError?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 当我尝试调用我的函数时,为什么会出现NameError?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含968字,纯文字阅读大概需要2分钟。
内容图文
![python – 当我尝试调用我的函数时,为什么会出现NameError?](/upload/InfoBanner/zyjiaocheng/709/bfd22544eeec46209a4c06ff1420e29a.jpg)
这是我的代码:
import os
if os.path.exists(r'C:\Genisis_AI'):
print("Main File path exists! Continuing with startup")
else:
createDirs()
def createDirs():
os.makedirs(r'C:\Genisis_AI\memories')
当我执行它时,它会抛出一个错误:
File "foo.py", line 6, in <module>
createDirs()
NameError: name 'createDirs' is not defined
我确定它不是拼写错误,我没有拼错函数的名称,为什么我得到一个NameError?
解决方法:
除非您已经定义了函数,否则无法调用函数.移动def createDirs():阻止导入到导入下方的文件顶部.
某些语言允许您在定义函数之前使用它们.例如,javascript称之为“吊装”.但Python不是那些语言之一.
请注意,允许在高于创建函数的行的行中引用函数,只要按时间顺序定义在使用之前发生.例如,这是可以接受的:
import os
def doStuff():
if os.path.exists(r'C:\Genisis_AI'):
print("Main File path exists! Continuing with startup")
else:
createDirs()
def createDirs():
os.makedirs(r'C:\Genisis_AI\memories')
doStuff()
即使在第7行调用了createDirs()并且它在第9行定义,这也不是问题,因为def createDirs在第12行的doStuff()之前执行.
内容总结
以上是互联网集市为您收集整理的python – 当我尝试调用我的函数时,为什么会出现NameError?全部内容,希望文章能够帮你解决python – 当我尝试调用我的函数时,为什么会出现NameError?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。