Python學習中遇到的小知識點

來源:互聯網
上載者:User

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'

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.