優雅的python 18式優雅你的Python

2021-10-12 11:57:22 字數 2090 閱讀 6415

一,優雅你的jupyter

1,更改jupyter notebook初始工作路徑

平凡方法:

在cmd中輸入jupyter notebook --generate-config,然後找到生成的配置檔案jupyter_notebook_config.py,在其中加入一條語句:

優雅方法:

f:cd f:\我的堅果雲\pythonfiles

jupyter notebook

pause

儲存後將檔案重新命名為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下標後設定不換行並使用『\r』回車到行首以避免輸出刷屏。

優雅方法加強版:

定義progress_bar函式,直觀顯示進度條。

五,優雅你的函式

16,使用lambda匿名函式實現簡單的函式

平凡方法:

使用def關鍵字定義函式。

優雅方法:

使用lambda匿名函式。

17,使用yield生成器收集系列值

平凡方法:

在函式中直接用列表收集系列值。

優雅方法:

使用yield生成器收集系列值。生成器具有惰性計算特點,被迭代才逐個計算輸出值。

18,使用裝飾器給函式新增插入日誌,效能測試等非核心功能

平凡方法:

將插入日誌,效能測試等非核心功能直接內嵌到函式定義中。

優雅方法:

使用裝飾器擴充套件函式的非核心功能。裝飾器函式可以一次定義,到處裝飾。

優雅的使用python

優雅的使用python,讓自己的code更pythonic test list 龍母 雪諾 提里昂 山姆 count 0 for name in test list print s的序號是 d name,count count 1龍母的序號是 0 雪諾的序號是 1 提里昂的序號是 2 山姆的序號是 ...

十八招讓你的Python變得優雅!

一,優雅你的jupyter 1,更改jupyter notebook初始工作路徑 平凡方法 在cmd中輸入jupyter notebook generate config,然後找到生成的配置檔案jupyter notebook config.py,在其中加入一條語句 f 我的堅果雲 pythonfi...

你的終端從未如此優雅

支援作者 終端的美好在於簡潔高效,語義明確。我很不幸的看到越來越多的同學,還沒有好好接觸終端,就草草下了結論,覺得自己不需要終端。本文將帶領大家上手乙個優雅的終端 hyper。在轉到mac開發之後,我陸續使用了幾個終端,最開始是機器自帶的terminal,之後使用iterm2,現在用上了hyper。...