[英]Using parameters defined in other functions
我不是定義 function 的專家,但我需要創建一個新的。
我有一個 function
由於我使用的函數太大,這里就不一一介紹了,我舉個例子:
def fun1():
query=input("Enter query:")
return (query)
def fun2():
country=input("Enter country:")
language=input("Enter language:")
return(country, language)
def fun3():
fun1()
fun2()
print("Country: You have selected ",country)
print("Language: You have selected ", language)
print("Query: You have selected ", query)
這不識別來自先前功能的國家、語言和查詢。 您能解釋一下如何正確定義最后一個函數以使用先前設置的參數嗎?
方法如下:
def fun1():
query = input("Enter query: ")
return query
def fun2():
country = input("Enter country: ")
language = input("Enter language: ")
return country, language
def fun3():
query, (country, language) = fun1(), fun2()
print("Country: You have selected", country)
print("Language: You have selected", language)
print("Query: You have selected", query)
fun3()
輸入:
Enter query: Are you happy?
Enter country: Australia
Enter language: English
Output:
Country: You have selected Australia
Language: You have selected English
Query: You have selected Are you happy?
當您調用函數時,它們會在自己的范圍內設置query
、 country
和language
。 query
由fun1()
擁有, country
和language
由fun2()
擁有。
當這些函數運行完畢后, query
、 country
和language
go 超出 scope 並且不再有效。
由於您要返回這些變量的值,所以fun3()
應該捕獲結果。
做你正在嘗試的正確方法是:
def fun3():
query = fun1()
country, language = fun2()
print("Country: You have selected ",country)
print("Language: You have selected ", language)
print("Query: You have selected ", query)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.