資源描述:
《【收藏】python實(shí)用技巧》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、http://www.shoulou1.com供稿【收藏】Python實(shí)用技巧前言本文主要記錄Python中一些常用技巧,所描述的是告訴你怎么寫才是更好?如果你并不熟悉Python語法,希望你能在下面代碼片段中看到Python的簡單、優(yōu)雅;如果你象我這樣,對Python有興趣或并正在學(xué)習(xí),我相信下面的技巧并不會讓你失望;如果你已經(jīng)是一名Pythoner,那么很樂于你分享你的經(jīng)驗和技巧。目錄Python禪道代碼風(fēng)格:提高可讀性PEP8:Python代碼風(fēng)格指南空格(行)使用(1)空格(行)使用(2)命名較長代碼行較長字符
2、串復(fù)合語句字符串文檔&注釋交換變量更多關(guān)于Tuples關(guān)于"_"創(chuàng)建String:從列表中創(chuàng)建盡可能的使用字典中的get函數(shù)字典中的setdefault函數(shù)(1)字典中的setdefault函數(shù)(2)defaultdict創(chuàng)建&分割字典判斷True值True值索引&項(1)索引&項(2):enumerate默認(rèn)參數(shù)值列表理解http://www.shoulou1.com供稿生成器表達(dá)式(1)生成器表達(dá)式(2)排序使用DSU*排序使用Key排序生成器生成器示例從文件中讀
3、取數(shù)據(jù)行try/except示例導(dǎo)入(Importing)模塊&腳本模塊結(jié)構(gòu)命令行處理簡單比復(fù)雜好不要重新發(fā)明輪子章節(jié)Python禪道這是Python的指導(dǎo)原則,但有不同詮釋。如果您使用的一種編程語言是以小品喜劇藝術(shù)團(tuán)命名的,你最好有幽默感。美麗優(yōu)于丑陋。http://www.shoulou1.com供稿明確優(yōu)于含蓄。簡單比復(fù)雜好。平倘優(yōu)于嵌套。稀疏比密集更好。特殊情況不能特殊到打破規(guī)則。錯誤不應(yīng)該默默傳遞。......代碼風(fēng)格:提高可讀性Programsmustbewrittenforpeopletoread
4、,andonlyincidentallyformachinestoexecute.—Abelson&Sussman,StructureandInterpretationofComputerProgramsPEP8:Python代碼風(fēng)格指南值得閱讀:http://www.shoulou1.com供稿http://www.python.org/dev/peps/pep-0008/空格(行)使用(1)使用4個空格縮進(jìn)。不要使用制表符。不要將制表符和空格混合使用。IDEL和Emacs的Python的都支持spaces模
5、式。每個函數(shù)之間應(yīng)該有一個空行。每一個Class之間應(yīng)該有兩個空行??崭?行)使用(2)在使用字典(dict),列表(list),元組(tuple),參數(shù)(argument)列表時,應(yīng)在","前添加一個空格,并且使用字典(dict)時,在":"號后添加空格,而不是在前面添加。在括號之前或參數(shù)之前不添加空格。在文檔注釋中前后應(yīng)該沒有空格。Python代碼http://www.shoulou1.com供稿defmake_squares(key,value=0):""
6、;"Returnadictionaryandalist..."""d={key:value}l=[key,value]returnd,l命名joined_lower可以是函數(shù)名,方法名,屬性名joined_lowerorALL_CAPS是常量StudlyCaps類名camelCase只有在預(yù)先制定好的命名規(guī)范使用屬性:interface,_internal,__private但盡量避免__private形式。下面兩個鏈接解釋了為什么python中沒有private聲明?http:
7、//stackoverflow.com/questions/70528/why-are-pythons-private-methods-not-actually-privatehttp://stackoverflow.com/questions/1641219/does-python-have-private-variables-in-classes較長代碼行http://www.shoulou1.com供稿保持一行代碼在80個字符長度。在括號內(nèi)使用隱含的行延續(xù):Python代碼def__init__(self,fir
8、st,second,third,fourth,fifth,sixth):output=(first+second+third+fourth+fifth+sixth)或者在需要換行的位置使用來延續(xù)行:Python代碼VeryLong.left_hand_side=even_longer.right_hand_side()另外,使