gpt4 book ai didi

Python:如何在其他函数中使用一个函数中的命名变量

转载 作者:太空宇宙 更新时间:2023-11-03 13:46:11 25 4
gpt4 key购买 nike

我是一名新手程序员,尝试使用 Python 3.3.2 编写一个程序,该程序具有一个调用 function1()main() 函数,然后循环function2()function3()

我的代码通常是这样的:

def function1():
print("hello")

def function2():
name = input("Enter name: ")

def function3():
print(name)

def main():
function1()
while True:
funtion2()
function3()
if name == "":
break

main()

目前,当我运行程序并输入名称时出现以下错误:

NameError: global name 'name' is not defined

我理解这是因为 name 仅在 function2() 中定义。我该怎么做才能将 name 定义为“全局名称”,或者以某种方式能够在 function3()main()< 中使用它.

提前致谢。

最佳答案

不要尝试将其定义为全局变量,而是返回它:

def function2():
name = input("Enter name: ")
return name

def function3():
print(function2())

如果你想使用函数中定义的变量在所有函数中可用,那么使用一个类:

class A(object):

def function1(self):
print("hello")

def function2(self):
self.name = input("Enter name: ")

def function3():
print(self.name)

def main(self):
self.function1()
while True:
funtion2()
function3()
if not self.name:
break

A().main()

关于Python:如何在其他函数中使用一个函数中的命名变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19946448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com