請問有同學老師可以幫我解釋一下這行代碼嗎?純菜鳥看不懂。兩個參數,前面的參數是需要輸入的,不是必須要有的嗎?后面那個可以省掉的才是默認參數啊。為什么這個代碼只有一個參數呢?還有函數里面的那些代碼是什么意思啊
def greet(name='world'):
? ? print "Hello,%s." % name
greet()
greet('Bart')
def greet(name='world'):
? ? print "Hello,%s." % name
greet()
greet('Bart')
2019-08-12
舉報
2020-02-20
自定義函數中,如果這個函數只需要一個參數的時候,就設置一個參數。如果需要兩個參數的時候,就設置兩個參數。
當設置參數的時候,就有可能會有默認參數,默認參數是為了輸入者省事。為了能夠明確的讓機器知道我們省略了哪個參數,就把默認參數作為所有參數中的最后一個出現。
題目中列的函數greet(),只需要一個參數,并且是默認參數。
沒有輸入參數值的時候,也就是調用greet(),這時候屬于未指定name值,函數將使用默認值,會輸出Hello,World
有參數值輸入時,也就是調用greet('Bart'),這時候就屬于指定了name值,函數將使用指定值,那么就會輸出Hello,Bart
您說的函數里的代碼是不是指的%s,%name這些?%s是一種字符串的輸出格式說明符,指的是這個位置是輸出字符串的,輸出的字符串就是name,所以%s后面跟了個%name。
2019-12-01
%s和%name是什么意思啊?
2019-09-23
因為這個函數只需要一個參數,這個參數可以有默認值,那它就是默認參數啊
2019-08-13
首先,對于這個函數而言,你可以不輸入參數,例如:
那么函數的輸出就是【默認輸出】,即:Hello, world
如果你想輸入一個參數,例如:
那么這個函數的輸出就是Hello, 【你輸入的參數】。
所以很明顯,定義函數的時候只需要定義一個參數,并且這個參數的默認值是‘world’.
? print "Hello,%s." % name
就是打印 Hello, [name]鴨
%s的位置就是name的值
2019-08-12
如果默認參數不是放在最后,是放在中間或者前面,試想一下,別人要怎么才能知道你省略了第幾個參數呢。