Python学习中遇到的小知识点

来源:互联网 发布:数据分析师待遇怎么样 编辑:程序博客网 时间:2024/05/23 10:36

1. pass语句什么也不做,一般作为占位符或者创建占位程序,pass语句不会执行任何操作,比如:

 

while False:

pass

 

pass通常用来创建一个最简单的类:

 

class MyEmptyClass:

pass

 

pass在软件设计阶段也经常用来作为TODO,提醒实现相应的实现,比如:

 

def initlog(*args):

pass #please implement this

 

以if语句为例,

在c或c++/java中:

if(true)

;//do nothing

else

{

//do something

}

对应于python就要这样写:

if true:

pass #do nothing

else:

#do something

 

2.__init__的用法

__init__是当类初始化的时候自动调用,用来完成初始化对object的初始化,例:

class Person:

def __init__(self, name):

self.name = name

def sayHi(self):

print 'Hello, my name is', self.name

 

p = Person('Swaroop')

p.sayHi()

 

 

运行结果:

Hello, my name is Swaroop

 

由结果可以看到,虽然我们没有显示的调用__init__方法,不过class Person还是被初始化了

 

 

3.__name__的用法

 

如果一个.py文件被单独运行,那么__name__是被设置为__main__的,所以可以用

if __name__=='__main__': 来进行一些判断,

不过如果.py文件是作为模块被import,则__name__就不为__main__了,会被设置为模块的名称,例如:

>>> import odbchelper

>>> odbchelper.__name__

'odbchelper'