這篇文章主要講解了“有趣的Python用法有哪些”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“有趣的Python用法有哪些”吧!
創(chuàng)新互聯(lián)建站主要為客戶提供服務(wù)項目涵蓋了網(wǎng)頁視覺設(shè)計、VI標(biāo)志設(shè)計、營銷推廣、網(wǎng)站程序開發(fā)、HTML5響應(yīng)式重慶網(wǎng)站建設(shè)公司、手機(jī)網(wǎng)站制作設(shè)計、微商城、網(wǎng)站托管及網(wǎng)站維護(hù)、WEB系統(tǒng)開發(fā)、域名注冊、國內(nèi)外服務(wù)器租用、視頻、平面設(shè)計、SEO優(yōu)化排名。設(shè)計、前端、后端三個建站步驟的完善服務(wù)體系。一人跟蹤測試的建站服務(wù)標(biāo)準(zhǔn)。已經(jīng)為PE包裝袋行業(yè)客戶提供了網(wǎng)站營銷服務(wù)。1.for-else用法
循環(huán)正常結(jié)束則執(zhí)行else語句。一般用于循環(huán)找符合條件的元素,如果找到則break
調(diào)出循環(huán),不會觸發(fā)else
;如果沒有找到(完整運(yùn)行循環(huán))則print not found
《Effictive Python》一書中對for-else用法提出了質(zhì)疑,主要觀點是可以通過封裝成函數(shù)來取代這一用法,而封裝成函數(shù)是更加通用易懂的做法,所以一般不會使用for-else用法。
2.try-else用法
如果沒有觸發(fā)異常就執(zhí)行else
3.解包用法
類似這樣a,b,c = ['a', 'b', 'c']
4.單行if-else
a = 1 b = 3 if a == 1 else 2 print('it is one' if a == 1 else 'no')
5.迭代器傳入函數(shù)中不用加括號
# 一般是這樣 a = (i for i in range(10)) sum(a) # 我們可以這樣 sum((i for i in range(10))) # 但我們還可以這樣 sum(i for i in range(10)) # 類似的有 ' '.join(str(i) for i in range(10))
7.or的用法
python中x or y
表示如果x為真就是x的值,否則為y的值
我們會經(jīng)??吹筋愃七@樣的用法(比如函數(shù)的一個value
參數(shù)沒有設(shè)置默認(rèn)值,這樣使用就允許它不賦值)
value = value or {} # 相當(dāng)于 value = value if value else {}
8.and的用法
python中x and y
表示如果x是假,結(jié)果就是x的值,否則就是y的值
x and y and z
多個and連接時,如果全是真結(jié)果就是最后一個的值;如果中間有假的值,結(jié)果就是第一個假的值
舉一個例子
def not_empty(a): return a and a.strip() not_empty(' a ') # 值為 'a' not_empty(None) # 不會報錯(如果 return a.strip() 就會報錯) # 在處理None的問題上相當(dāng)于 def not_empty(a): if a is None: return None else: return a.strip()
細(xì)細(xì)品味and和or的差別,他們邏輯類似,但是實現(xiàn)的功能是不可以相互替代的
or 是結(jié)果如果不滿意有個善后工作
and是要做一件事之前先檢驗一下,不能做就不讓它做
9.if value:
# 要用 if value: # 不要用 if value == True:
這里總結(jié)一下這種情況下什么時候是True
,什么時候是False
False: 0 0.0 '' [] {} () set() None False
True:
' ' 'anything' [''] [0] (None, )
沒有內(nèi)容的可迭代對象
另外要注意一點,我們用if
判斷一個對象是不是None
的時候,要if a is None
而不要直接if a
,因為如果是后者,有非常多不是None
的情況也會判定為False
,比如空字符串、空列表等,為了精確指定None
還是要用前者,這也是一種規(guī)范。
10.下劃線的特殊使用
python中下劃線是一種特殊的變量和符號,有一些特殊的用途
11.文檔字符串
python有一種獨(dú)一無二的注釋方式,在包、模塊、函數(shù)、類中第一句,使用'''doc'''
這樣三引號注釋,就可以在對象中用__doc__
的方式提取
比較規(guī)范的寫法是這樣的(這里參考grequests
模塊的寫法)
def myfun(a, b): '''add two numbers :param a: one number :param b: another number :returns: a number ''' print(a + b) print(myfun.__doc__) # 結(jié)果為 add two numbers :param a: one number :param b: another number :returns: a number
其實參數(shù)還有其他的寫法,如numpy
庫的寫法,可以看
這里
除此之外,函數(shù)注釋還有另一種方式,函數(shù)名可以直接調(diào)用某個參數(shù)的注釋
1.sum的本質(zhì)
本質(zhì):sum(iterable, start=0)
將可迭代對象使用+
連接
所以sum([[1,2],[3,4]], [])
返回結(jié)果為[1, 2, 3, 4]
2.range(start, stop[, step])
可以直接用for i in range(10, 0, -1)
降序循環(huán)
3.enumerate循環(huán)索引
for index, item in enumerate(['a', 'b', 'c']): print(index, item) 輸出: 0 a 1 b 2 c
4.管道操作
func1(func2(func3(a)))寫成類似a %>% func3 %>% func2 %>% func1,清晰展示函數(shù)執(zhí)行的順序,增強(qiáng)可讀性
python本身不帶有這樣的用法,只是一些庫提供了這樣的用法,比如pandas和syntax_suga
感謝各位的閱讀,以上就是“有趣的Python用法有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對有趣的Python用法有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
網(wǎng)頁名稱:有趣的Python用法有哪些-創(chuàng)新互聯(lián)
文章來源:http://jinyejixie.com/article0/egsio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、軟件開發(fā)、動態(tài)網(wǎng)站、網(wǎng)站導(dǎo)航、外貿(mào)網(wǎng)站建設(shè)、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容