這課對(duì)我來(lái)說(shuō)只有一個(gè)細(xì)節(jié)是值得注意的,先貼上代碼:
#coding=utf-8
def print_two(*args):#參數(shù)可以是N個(gè)
arg1, arg2, arg3= args #參數(shù)解包
print "arg1: %r, arg2: %r,arg3: %r" % (arg1, arg2, arg3)
def print_two_again(arg1, arg2): #只有兩個(gè)參數(shù)且跳過(guò)解包過(guò)程
print "arg1: %r, arg2: %r" % (arg1, arg2)
def print_one(arg1): #只一個(gè)參數(shù)
print "arg1: %r " % arg1
def print_none(): #沒(méi)有參數(shù)
print "I got nothing."
print_two("Zed", "Shaw","lalala")
print_two_again("Zed", "Shaw")
print_one("First!")
print_none()
代碼中包含四個(gè)函數(shù),第一個(gè)函數(shù)可以接收N個(gè)參數(shù),而且緊接著第二行代碼就是對(duì)這些參數(shù)進(jìn)行解包,第二函數(shù)只接收兩個(gè)參數(shù),第三個(gè)只接收一個(gè)參數(shù),第四個(gè)函數(shù)不接收任何參數(shù),注意第一個(gè)函數(shù)參數(shù)的意義就行了。
常見(jiàn)問(wèn)題回答
args前的 * 是什么意思?
它的功能是告訴python把函數(shù)的所有參數(shù)都接收進(jìn)來(lái),然后放到名叫args的列表中去,不限參數(shù)個(gè)數(shù)