我想更好地理解函式和引數,我已經閱讀過,這是我所閱讀的內容的實作。
我有 3 個小函式來說明我的觀點。
用戶輸入采集、評分功能和主要。
def score(num1: int):
print("Please Enter Your Score: ")
num1 = int(input())
grade(num1)
def grade(num1: int):
if int(num1) in range(0,30):
print("Grade U")
if int(num1)in range(30,40):
print("Grade D")
if int(num1)in range(40,60):
print("Grade C")
if int(num1)in range(60,80):
print("Grade B")
if int(num1)>79:
print("Grade A")
def main():
print("Hi")
score(1)
如果我在沒有引數 (1) 的情況下運行 main 函式,則會導致查找引數時出錯。我知道我在函式中宣告它有一個引數(因為我希望它作為回傳值)但是我將如何在沒有引數的情況下呼叫 score 函式?
例如
def main()
print("hi")
score()
我想象函式是在沒有引數的情況下呼叫的,并且引數從函式定義(通過用戶輸入)傳遞到引數中
有人可以提供一個例子來說明我如何在呼叫時不需要虛擬變數(1)評分功能?
uj5u.com熱心網友回復:
這是我會做的一種方式:
def score():
print("Please Enter Your Score: ")
num1 = int(input())
grade(num1)
def grade(num1: int):
if 0 <= num1 < 30:
print("Grade U")
elif 30 <= num1 < 40:
print("Grade D")
elif 40 <= num1 < 60:
print("Grade C")
elif 60 <= num1 < 80:
print("Grade B")
elif num1 >= 80:
print("Grade A")
def main():
print("Hi")
score()
if __name__ == '__main__':
main()
如果您仍然希望能夠將引數傳遞給 score 函式,例如score(1),那么您可以改為為該函式分配一個可選引數。然后,如果num1沒有傳遞給評分函式,則僅讀取用戶輸入。
def score(num1=None):
if num1 is None:
print("Please Enter Your Score: ")
num1 = int(input())
grade(num1)
用法:
def main():
print("Hi")
score(1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/318487.html
上一篇:如何在Click功能上克隆專案?
下一篇:合并特定列和特定資料框的功能
