- 此问题在此处已有答案**:
How do I get a result (output) from a function? How can I use the result later?(4个答案)
Alternatives for returning multiple values from a Python function [closed](14个答案)
去年关闭了。
我正在学习python,目前正在写一个简单的程序,这个程序必须被分成函数,我的问题是我有一个函数应该返回四个不同变量的字符串,然后应该被另一个函数使用。
例如
def function1():
var1 = input("Write something: ")
var2 = input("Write something: ")
var3 = input("Write something: ")
def function2():
print(var1)
print(var2)
print(var3)
function1()
function2()
这会给出一个错误消息,因为var1没有在function2的框架中定义。该如何解决这个问题?为了清晰起见,这个图示非常简化,但如果需要的话,我可以发布一些更具体的内容。
4条答案
按热度按时间jk9hmnmh1#
返回
function1
中的变量:并将它们作为
function2
中的参数:这样称呼他们:
mefy6pfw2#
这不是函数的作用。
有一种东西叫做“作用域”,它的基本意思是,在函数中声明的变量是该函数的“本地”变量,不能被其他任何变量访问,如果需要向函数传递值,请使用参数。
这些内容应该都在您正在阅读的Python介绍中介绍过了--只需阅读一两页即可:)
7d7tgy0s3#
正确的方法是从函数返回值并通过输入参数传递它们:
我重命名了一些参数以强调在任何地方都没有名称关系。所有的值都显式返回和显式传递。
ibrsph3r4#
对于您当前的示例,更好的方法是重复使用相同的函数三次:
但最好返回
function1
中的变量,然后将其传递给function2
。这取决于您的具体问题。