在一个

时间:2015-12-05 18:52:21

标签: python python-3.x

我有几个函数写,当我想调用它时,我得到的问题(第一个函数中的某些东西)没有定义

def func1():

def func2():

def func3():

main()
    print("something")
    def func1():
    def func2():
    def func3():
    print("something")

if __name__ == '__main__':
    main()

func1:读取文件并给他变量(阅读模式)
func2:新输入
func3:打开文件进行写入,从func1写入旧变量并从fun2写入新输入。

问题是变量(来自func1)未定义。

直到需要编写新输入和旧变量才能工作。最后一次输入弹出后文件被清除。

NameError:名称'oldNamestaj'未定义

oldNamestaj是func1中的变量。

1 个答案:

答案 0 :(得分:0)

您的代码存在一些语法问题。首先,您需要定义main。其次,在执行函数时,您不需要包含冒号。此外,您的功能是空的,所以我在其中放入一个简单的打印命令,以便我可以看到代码是否正常工作。下面,您将看到已编辑的代码:

     ***
     def func1():
         print("something")
     def func2():
         print("something")
     def func3():
         print("something")
     def main():
         print("something")
         func1()
         func2()
         func3()
         print("something")

     if __name__ == '__main__':
         main()

其中给出了以下输出:

     ***
     something
     something
     something
     something
     something
     ***

这是因为函数main将打印"某些东西"一旦。然后是函数1,然后是2,然后是3,然后在main中有一个最终的print语句,这导致5" somethings"打印到控制台。

我希望这会有所帮助。