Python 超實用小技巧,提升工作效率 Max

語言: CN / TW / HK

眾所周知,Python 以簡潔易上手著稱,面對複雜瑣碎的重複性工作,有時候很有必要提煉一些小指令碼來處理重複工作,今天派森醬就給大家整理了十個超實用的小技巧,可直接執行,建議收藏。

0x00
我們可以通過列表來給多個變數賦值,只需要列表元素的個數和變數個數對應即可。

In [1]: list = [1, 2, 3]

In [2]: a, b, c = list

In [3]: print(a, b, c)
1 2 3

0x01
互動模式下的 _ 表示的是上一個表示式的輸出。

In [4]: 2 * 3
Out[4]: 6

In [5]: _
Out[5]: 6

0x02
通過 join 操作來連結列表中的元素。

In [6]: words = ['I', 'Like', 'Python']

In [7]: ' '.join(words)
Out[7]: 'I Like Python'

0x03
翻轉列表應該是基礎的常用操作了,這裡分享兩種常用的方法,可以通過 reverse 函式或者切片來返轉列表。

In [8]: words = ['I', 'Like', 'Python']

In [9]: words.reverse()

In [10]: words
Out[10]: ['Python', 'Like', 'I']

In [11]: words[::-1]
Out[11]: ['I', 'Like', 'Python']

0x04
雖說現在的計算機硬體已經非常便宜了,但這並不代表我們寫程式不需要考慮記憶體佔用問題,可以通過 sys 模組的 getsizeof 來獲取變數的記憶體佔用。

In [12]: import sys

In [13]: value = 100

In [14]: sys.getsizeof(value)
Out[14]: 28

0x05
多次列印字串,這也是一個表常用的功能,除錯時用的較多,做分割線特別好用。

In [15]: '#' * 20
Out[15]: '####################'

0x06
將字串的第一個字母變為大寫。

In [16]: word = 'python'

In [17]: word.title()
Out[17]: 'Python'

0x07
將相同元素個數的兩個列表變為字典。

In [18]: keys = ["a", "b", "c"]

In [19]: values = [1, 2, 3]

In [20]: dict(zip(keys, values))
Out[20]: {'a': 1, 'b': 2, 'c': 3}

0x08
設定字典的返回預設值,有點類似 Java 中的 map.getOrDefault() 函式。

In [23]: d = {'a': 1, 'b': 2}

In [24]: d.get('a')
Out[24]: 1

In [25]: d.get('c')

In [26]: d.get('c', 300)
Out[26]: 300

0x09
最後給大家分享下字典/集合推導式,這可是 Python 的最好用的功能之一。

In [27]: values = {i : i*i for i in range(5)}

In [28]: values
Out[28]: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}

In [29]: nums = {i*i for i in range(5)}

In [30]: nums
Out[30]: {0, 1, 4, 9, 16}

In [31]: nums = [i for i in range(5)]

In [32]: nums
Out[32]: [0, 1, 2, 3, 4]

以上就是本次分享的所有內容,想要了解更多歡迎前往公眾號:Python 程式設計學習圈,每日干貨分享