有人可以简单地解释python中的函数吗?我无法理解他们。
所以我对他们有所了解,这就是我最终的结果,但它一直说这个角色不是全局变量
def char_name():
character = input("Enter character name: ")
return character;
def main():
char_name()
print(character)
main()
任何人都可以解释功能吗?
答案 0 :(得分:1)
这部分是一个功能:
def char_name():
character = input("Enter character name: ")
return character;
重要的是要意识到变量character
仅在函数内存在 。不在它之外。这是一个很棒的功能 - 这意味着如果你决定name
毕竟是变量的更好的名称,那么你只需要更改函数内部的变量,并保证其他地方没有。不在其他地方对变量进行赋值可以影响函数中发生的事情。它就在那里。
该函数的返回值等于函数末尾变量的值。
def main():
char_name()
print(character)
这是另一个函数,它还尝试使用名为character
的变量。它碰巧有相同的名字,但这只是一个coincedence,它是一个不同的功能,所以它是一个不同的变量。不幸的是,这个变量只被使用但从未设置为任何值,并且Python也找不到它作为全局变量,所以它抛出异常。 <{1}}被调用,但它的返回值不用于任何东西,所以它被丢弃了。
你想要做的是:
char_name
调用函数def main():
name = char_name() # I picked a different name to make my point
print(name)
,并将其返回值分配给变量char_name
。现在你可以打印出来了。
答案 1 :(得分:0)
def char_name():
character = input("Enter character name: ")
return character
def main():
character = char_name()
print(character)
main()
您需要指定返回的值。