python中的函数 - 需要解释

时间:2014-02-14 23:26:31

标签: python function

有人可以简单地解释python中的函数吗?我无法理解他们。

所以我对他们有所了解,这就是我最终的结果,但它一直说这个角色不是全局变量

def char_name():
    character = input("Enter character name: ")
    return character;


def main():
    char_name()
    print(character)


main()

任何人都可以解释功能吗?

2 个答案:

答案 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()

您需要指定返回的值。