18式優雅你的Python
來自專欄 Python與演算法之美4 人贊了文章
一,優雅你的Jupyter
1,更改Jupyter Notebook初始工作路徑
平凡方法:
在cmd中輸入jupyter notebook --generate-config,
然後找到生成的配置文件 jupyter_notebook_config.py,在其中加入一條語句:
c.NotebookApp.notebook_dir =
F:我的堅果雲PythonFiles
優雅方法:
新建文本文件,在其中輸入以下內容:
F:
cd F:我的堅果雲PythonFilesjupyter notebookpause
保存後將文件重命名為jupyter.cmd,雙擊該文件即可。
2,獲取函數幫助
平凡方法:
help()。
優雅方法:
游標移動至函數名右側(或選中函數名),按住Shift + Tab鍵彈出幫助文本框。
3,修改多處的同一標識符名字
平凡方法:
逐個修改。
優雅方法:
按住Ctrl滑鼠移動游標同時選中多處編輯位置,啟動多行編輯。
二,優雅你的賦值語句
4,為多個變數賦值
平凡方法:
逐一賦值。
優雅方法:
使用元組語法同時賦值。
5,序列解包
平凡方法:
使用下標訪問逐一賦值。
優雅方法:
序列自動解包。
6,對象方法的嵌套
平凡方法:
定義中間變數,不嵌套。
優雅方法:
使用對象方法嵌套,減少中間變數。
三,優雅你的判斷語句
7,單行if語句:if...else...三目運算符
平凡方法:
使用普通需要換行的if...else...語句。
優雅方法:
使用單行if語句:if...else...三目運算符。
8,區間判斷
平凡方法:
使用and連接兩次判斷。
優雅方法:
使用鏈式判斷。
9,判斷是否為多個取值之一
平凡方法:
使用or連接多次相等判斷。
優雅方法:
使用關鍵字in。
10,判斷是否為空列表,空字典,空字元串
平凡方法:
使用len函數判斷長度是否大於0。
優雅方法:
利用隱含類型轉換直接判斷。
11,判斷諸多條件是否至少有一個成立
平凡方法:
使用or連接多次判斷。
優雅方法:
使用any函數。
12,判斷諸多條件是否全部成立
平凡方法:
使用and連接多次判斷。
優雅方法:
使用all函數。
四,優雅你的循環語句
13,單行循環語句:推導式
平凡方法:
使用普通for循環。
優雅方法:
使用推導式:[... for .... in ... if ... ]。
14,同時遍歷序列的元素和元素下標
平凡方法:
遍歷下標,並用下標訪問元素。
優雅方法:
使用enumerate函數生成下標和元素對。
15,顯示循環進度
平凡方法:
直接不斷print下標。該方法容易導致輸出刷屏。
優雅方法:
print下標後設置不換行並使用『
』回車到行首以避免輸出刷屏。
優雅方法加強版:
定義progress_bar函數,直觀顯示進度條。
五,優雅你的函數
16,使用lambda匿名函數實現簡單的函數
平凡方法:
使用def關鍵字定義函數。
優雅方法:
使用lambda匿名函數。
17,使用yield生成器收集系列值
平凡方法:
在函數中直接用列表收集系列值。
優雅方法:
使用yield生成器收集系列值。生成器具有惰性計算特點,被迭代才逐個計算輸出值。
18,使用裝飾器給函數添加插入日誌,性能測試等非核心功能
平凡方法:
將插入日誌,性能測試等非核心功能直接內嵌到函數定義中。
優雅方法:
使用裝飾器擴展函數的非核心功能。裝飾器函數可以一次定義,到處裝飾。
推薦閱讀:
※知名體脂秤品牌發布手機無線充,PICOOC有品在做怎樣的布局?
※馬斯克的新玩具,龍飛船之後,現在是賽博龍
※讓機器「察言作畫」:從語言到視覺|VALSE2018之二
※優化長尾詞有沒有用,墨子學院技術分享
※蘋果第二代AirPods充電盒或將配備無線音頻發射器