知乎高贊!11個短小精悍的Python代碼!
Python里面的技巧很多,而且非常靈活,菜鳥剛?cè)腴T的時候,需要掌握一些常見解決問題的技巧和套路。今天小編從知乎中收錄了一波高贊的短小的代碼,這些代碼非常實用,在日常的編程過程經(jīng)常會用到,一起來看一下!
1.獲取元音字母
上面的代碼其實是一個常見的過濾字符串里面的字母,比如過濾元音字母。其實有很多類似的這樣的需求都可以按照這個套路用。
2.首字母大寫
如果我們需要把一段字符串的里面單詞大些,其實直接用string.title()函數(shù)就可以輕松搞定,Python里面的字符串其實內(nèi)置了很多有用的函數(shù),有興趣的同學(xué)可以去試一下。
3.合并兩個字典
字典是Python數(shù)據(jù)結(jié)構(gòu)里面最最重要的三大類型之一,掌握它的用法非常重要,比如字典的合并,字典的排序,字典的搜索等等。
4.計算代碼執(zhí)行時間
計算一段代碼的執(zhí)行時間,除了用linux一些內(nèi)置命令,其實用time函數(shù)來計算起始和結(jié)束的時間差,也是常用的一段手段,尤其是在代碼性能優(yōu)化的時候。當(dāng)然如果真的需要把代碼加速的話,也有一些其他的辦法,比如把核心代碼用C去寫,或者用pandas/numpy去寫。
5.過濾掉列表里False值
過濾列表里面的值常見的我們young推導(dǎo)列表或者用內(nèi)置的filter函數(shù)也是可以的,短小精悍非常方便。
6.內(nèi)存的使用率
檢查Python各種數(shù)據(jù)結(jié)構(gòu)在內(nèi)存占的大小,一般就可以用sys模塊里面的getsizeof函數(shù)去堅持,它會返回這個對象占內(nèi)存的字節(jié)數(shù)。
7.檢查是否有重復(fù)
堅持一個列表是否有重復(fù),這個的需求非常非常常見。典型的做法就是用set直接去重,如果碰到復(fù)雜的列表數(shù)據(jù)結(jié)構(gòu),需要進一步的寫算法去去重。類似的這樣題目其實leetcode上有很多。
8.字典排序
字典排序問題的解決一般用的最多的就是上面這招,利用sorted函數(shù)來處理,非常方便,如果不懂的一定要記住這招,死記硬背也要拿下。
9.搜索子字符串
在一個復(fù)雜的列表或者更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)里面進行搜索,這樣的小需求在很多項目里面都有,套路都是循環(huán)進行過濾,當(dāng)然有可以用推導(dǎo)列表進行過濾。
10.列表分段
如何把一個長的列表進行分段,這里用了一個非常巧妙的方法化解,大家可以學(xué)習(xí)一下。
11.檢查文件是否存在
很多時候我們需要保存文件,比如csv,json,txt文件,一般會判斷一下這個文件路徑是否存在,如果不存在的創(chuàng)建文件夾然后進行保存。