這個程序為什么不行
def greet(x,y=5):
? ? if None:
? ? ? ? return'Hello, world'
? ? return 'Hello, xxx.'
print(greet( ))
print(greet('Bart'))
def greet(x,y=5):
? ? if None:
? ? ? ? return'Hello, world'
? ? return 'Hello, xxx.'
print(greet( ))
print(greet('Bart'))
2019-05-21
舉報
2020-02-20
您的greet函數里,有兩個參數,前一個x,是必須參數,后一個y=5,是默認參數。
必須參數是必須要給予輸入值的。
行1,參數?y=5中,5是數字,但函數要求的輸入值是字符串,兩個類型不相符。
行2,在程序中,想說明未輸入,是用None,但需要用”==”的形式來說明,而不是上來就直接給個None。
行4,返回值中的xxx,指代的是給定的參數輸入值,不要用xxx,直接用參數就可以了。
def greet(y='world'):
? ? if y==None:
? ? ? ? return 'Hello, world'
? ? return 'Hello,'+ y +'.'?
print(greet( ))
print(greet('Bart'))
這段代碼,在Python3.7里運行正常,可以對比一下。
2019-06-01
def greet(x):
? ? if x==None:
? ? ? ? return'Hello, world.'
? ??
? ? return 'Hello, '+x+'.'
print greet(None)
print(greet('Bart'))
2019-05-21
你跟我想的一樣