一個小示例告訴你Python語言的優(yōu)雅之處
比如, 我們希望希望檢測"一段string是否以特定的字符串結(jié)尾?", 通常我們使用:
if needle.endswith('ly') or needle.endswith('ed') or needle.endswith('ing') or needle.endswith('ers'): print('Is valid') else: print('Invalid')
十分丑陋是吧? 如果我們檢測變量needle是否是以下特定字符串之一的話, 會這樣寫:
if needle in ('ly', 'ed', 'ing', 'ers'): print('Is valid') else: print('Invalid')
但是, 我們無法在 endswith function 中使用 in, 但我們換一種想法, 我們需要檢查的其實是"一段string的結(jié)尾是否是以下字符串的任意一個?", 我們會發(fā)現(xiàn)python有內(nèi)部函數(shù)any, 于是我們的代碼可以改為:
if any([needle.endswith(e) for e in ('ly', 'ed', 'ing', 'ers')]): print('Is valid') else: print('Invalid')
相信很多讀者在此會不同意我的做法, 或者有更好的寫法存在. 但這已經(jīng)不重要. 我明白你們大多數(shù)都會使用類似的寫法面對這一相似的問題. 我真正的目的其實是展示一下Python的優(yōu)雅之處.
相關文章
python中向二維數(shù)組中添加整行或者增列元素問題
這篇文章主要介紹了python中向二維數(shù)組中添加整行或者增列元素問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01簡單談談Python中的元祖(Tuple)和字典(Dict)
這篇文章主要介紹了關于Python中元祖(Tuple)和字典(Dict)的相關資料,文中通過示例代碼介紹的非常詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-04-04在macOS上搭建python環(huán)境的實現(xiàn)方法
今天小編就為大家分享一篇在macOS上搭建python環(huán)境的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08