Python的那些坑--------括号篇

在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

posted @ 2017-05-27 15:26  两只老虎111  阅读(9785)  评论(0编辑  收藏  举报