python代码阅读技巧_30个Python程序员需要知道的编程技巧,可以让你的工作事半功倍!...
1.直接交換2個數字的位置
Python 提供了一種直觀的方式在一行代碼中賦值和交換(變量值)。如下所示:
在上面代碼中,賦值的右側形成了一個新元組,而左側則立刻將該(未被引用的)元組解包到名稱和。
待賦值完成后,新元組就變成了未被引用狀態,并且被標為可被垃圾回收,最終也就發生了數字交換。
2.鏈接比較操作符
比較運算符的聚合是另一種有時用起來很順手的技巧。
3.使用三元操作符進行條件賦值
三元操作符是 if-else 語句(也就是條件操作符)的快捷操作
下面舉兩個例子例子,展示一下可以用這種技巧讓你的代碼更緊湊更簡潔。
下面的語句意思是“如果 y 為 9,就向 x 賦值 10,否則向 x 賦值 20”。如果需要,我們可以擴展這個操作符鏈接:
同樣,我們對類對象也可以這樣操作:
在上面這個例子中,classA 與 classB 是兩個類,其中一個類構造函數會被調用。
4.使用多行字符串
這個方法就是使用源自 C 語言的反斜杠:
另一個技巧就是用三引號:
上述方法的一個常見問題就是缺少合適的縮進,如果我們想縮進,就會在字符串中插入空格。
所以最終的解決方案就是將字符串分成多行,并將整個字符串包含在括號中:
5.將一個列表的元素保存到新變量中
我們可以用一個列表來初始化多個變量,在解析列表時,變量的數量不應超過列表中的元素數量,否則會報錯。
6.打印出導入的模塊的文件路徑
如果你想知道代碼中導入的模塊的絕對路徑,用下面這條技巧就行了:
7.使用交互式“_”操作符
其實這是個相當有用的功能,只是我們很多人并沒有注意到。
在 Python 控制臺中,每當我們測試一個表達式或調用一個函數時,結果都會分配一個臨時名稱,_(一條下劃線)。
這里的“_”是上一個執行的表達式的結果。推薦下小編的Python學習q u n 227-435-450,不管你是小白還是大牛,小編我都歡迎,不定期分享干貨,包括小編自己整理的一份2018最新的Python資料和0基礎入門教程,歡迎初學和進階中的小伙伴。在不忙的時間我會給大家解惑。
8.字典/集合推導
就像我們使用列表表達式一樣,我們也可以使用字典/集合推導。非常簡單易用,也很有效,示例如下:
注意:在這兩個語句中,<:>只有一處差異。另外,如果想用 Python3 運行以上代碼,要把 替換為 。
9.調試腳本
我們可以借助 模塊在 Python 腳本中設置斷點,如下所示:
我們可以在腳本的任意位置指定 ,然后在那里設置一個斷點,非常方便。
10.設置文件分享
Python 能讓我們運行 HTTP 服務器,可以用于分享服務器根目錄中的文件。啟動服務器的命令如下:
上述命令會在默認端口 8000 啟動一個服務器,你也可以使用自定義端口,將端口作為最后元素傳入上述命令中即可。
11.在Python中檢查對象
我們可以通過調用 dir() 方法在 Python 中檢查對象,下面是一個簡單的例子:
12.簡化if語句
我們可以通過如下方式來驗證多個值:
if m in [1,3,5,7]:
而不用這樣:
if m==1 or m==3 or m==5 or m==7:
對于in操作符,我們也可以用‘{1,3,5,7}’而不是‘[1,3,5,7]’,因為‘set’可以通過O(1)獲取每個元素。
13.在運行時檢測Python的版本
有時如果當前運行的 Python 低于支持版本時,我們可能不想執行程序。那么就可以用下面的代碼腳本檢測 Python 的版本。還能以可讀格式打印出當前所用的 Python 版本。
另外,你可以將上面代碼中的 sys.hexversion!= 50660080 替換為 sys.version_info >= (3, 5)。
在 Python 2.7 中運行輸出為:
在Python 3.5中運行輸出為:
14.組合多個字符串
如果你想拼接列表中的所有 token,那么看看下面的例子就明白了:
>>> test = ['I', 'Like', 'Python', 'automation']
現在我們從上面列表的元素中創建一個字符串:
>>> print ''.join(test)
15.翻轉字符串/列表的4種方式
我們會得到結果“nohtyP tseT”。
上面的命令會得到輸出結果 [5, 3, 1]。
16.使用枚舉
使用枚舉可以很容易地在循環中找到索引:
17.在 Python 中使用枚舉量
我們可以用如下方法來創建枚舉定義:
18.從函數中返回多個值
支持這種功能的編程語言并不多,然而,Python 中的函數可以返回多個值。
可以參考下面的例子看看是怎么做到的:
19.使用*運算符解壓縮函數參數
*運算符提供了一種很藝術的方式來解壓縮參數列表,參看如下示例:
20.使用字典來存儲表達式
21.一行代碼計算任何數字的階乘
22.找到一個列表中的出現最頻繁的值
23.重置遞歸限制
Python 將遞歸限制到 1000,我們可以重置這個值:
提示:在有必要時才使用該技巧。
24.檢查一個對象的內存使用
在 Python 2.7 中,一個 32-bit 的整數值會占用 24 字節,而在 Python 3.5 中會占用 28 字節。我們可以調用 方法來驗證內存使用。
在 Python 2.7 中:
在 Python 3.5 中:
25.使用_slots_減少內存消耗
不知道你是否注意過你的 Python 程序會占用很多資源,特別是內存?這里分享給你一個技巧,使用 <__slots__> 類變量來減少程序的內存消耗。
很明顯,從解雇中可以看到節省了一些內存。但是應當在一個類的內存占用大得沒有必要時再使用這種方法。對應用進行性能分析后再使用它,不然除了會讓代碼難以改動外沒有什么好處。
26.使用拉姆達來模仿輸出方法
27.從兩個相關序列中創建一個字典
28.用一行代碼搜索字符串的前后綴
29.不使用任何循環,構造一個列表
如果輸入列表中有嵌入的列表或元組作為元素,那么就使用下面這種方法,不過也有個局限,它使用了 for 循環:
30.在Python中實現一個真正的switch-case語句
下面是使用字典模仿一個 switch-case 構造的代碼示例:
結語
希望上面列出的這些 Python 技巧和建議能幫你快速和高效地完成 Python 開發,可以在項目中應用它們。歡迎留言評論!
總結
以上是生活随笔為你收集整理的python代码阅读技巧_30个Python程序员需要知道的编程技巧,可以让你的工作事半功倍!...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python标准库有多强大_Python
- 下一篇: asic面试题目 英伟达_英伟达一面总结