在Python中遇見了帶不帶括號的問題,我目前的是這三種,有問題請指出.如果有其他的,我后續會更新
一 函數帶不帶括號:
def a(x): return x print(a) #不帶括號調用的結果:<function a at 0x1091766a8> print(a(3)) #帶括號調用的結果:3
1.不帶括號時,調用的是這個函數本身
2、帶括號(此時必須傳入需要的參數),調用的是函數的return結果
摘自: http://blog.csdn.net/foryouslgme/article/details/51483867
二. class實例化帶不帶括號:
1 class clseest(): 2 y = '我 ' 3 def __init__(self): 4 self.y = '你' 5 x = clseest 6 print(x.y) #我 7 8 x = clseest() 9 print(x.y)#你
即:帶括號的實例化方法是調用了__init__()函數, 此時必須傳入需要的參數
摘自: http://bbs.csdn.net/topics/392156189
三 class新建的時候要不要加
class MyMsg:
是舊的書寫方式
class MyMsg(object):
是新的書寫方式,所以建議使用新的書寫方式
Ps:即沒有差別,不過要是有繼承必須寫():建議寫()
摘自: https://zhidao.baidu.com/question/1755948734505258708.html
補充:可變參數:
http://blog.csdn.net/chenjinyu_tang/article/details/8136841
參考上面的網址
一句話解釋:
*args :普通參數,可以認為是一個list
**kwargs 可以認為是一個字典,需要輸入key和value