一 函数带不带括号:
def a(x):
return x
print(a) #不带括号调用的结果:<function a at 0x1091766a8>
print(a(3)) #带括号调用的结果:3
1.不带括号时,调用的是这个函数本身
2、带括号(此时必须传入需要的参数),调用的是函数的return结果
二. class实例化带不带括号:
class clseest():
y = '我 '
def __init__(self):
self.y = '你'
x = clseest
print(x.y) #我
x = clseest()
print(x.y)#你
不加括号,相当于对类的引用,也就是类clseest的别名而已;加括号后,变量被关联到一个对象,可以对对象添加各种信息。
即:带括号的实例化方法是调用了init()函数, 此时必须传入需要的参数
三 class新建的时候要不要加
class MyMsg:
是旧的书写方式
class MyMsg(object):
是新的书写方式,所以建议使用新的书写方式
Ps:即没有差别,不过要是有继承必须写():建议写()