成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用于編寫更好的代碼的12個Python技巧和竅門

開發 后端
通過了解比較新的Python功能,技術,技巧和竅門來提高代碼質量。

 通過了解比較新的Python功能,技術,技巧和竅門來提高代碼質量。

用于編寫更好的代碼的12個Python技巧和竅門

1. F String

F字符串為將Python表達式嵌入字符串文字中進行格式化提供了一種簡潔方便的方法。

首先,讓我們定義兩個要包含在打印語句中的變量名稱和年齡。

 

  1. name = "Pavel" 
  2. age = 23 

要不處理字符串連接或在打印語句中使用逗號,可以使用Python 3.6中發布的Python改進的字符串格式語法" f-Strings"。

只需在帶有大括號內的變量或表達式的字符串前放置小寫或大寫字母" f"。 

F字符串是格式化字符串的一種很棒的新方法,與其他格式化方法相比,它更具可讀性,更快,更簡潔并且更不容易出錯!

2.幫助功能

Python幫助功能用于查找模塊,功能,類,關鍵字等的文檔。

只需在help函數內部傳遞一個對象即可檢索該對象的文檔:

用于編寫更好的代碼的12個Python技巧和竅門

3.查找任何對象的大小

默認的sys模塊包含一個getsizeof函數,該函數接受一個對象并返回其大小(以字節為單位)。 該對象可以是任何類型。

例如:

用于編寫更好的代碼的12個Python技巧和竅門

僅考慮直接歸因于對象的內存消耗,而不考慮它所引用的對象的內存消耗。

另一個例子:

用于編寫更好的代碼的12個Python技巧和竅門

4.比較運算符的鏈接

通常,要檢查兩個以上的條件,您將必須使用邏輯運算符,例如和/或

if a < b and b < c:

在Python中,有一種使用比較運算符Chaining的更好的編寫方法。

運算符的鏈可寫為:

if a < b < c:

例如:

 

用于編寫更好的代碼的12個Python技巧和竅門

 

5.列表推導表達式

列表推導表達式是創建列表的另一種且通常是更優雅的方法。

您可以按照以下格式同時定義列表及其內容,而不用創建一個空列表并將每個元素添加到末尾:

 

  1. new_list = [expression for item in iterable (if conditional)] 

例如:

用于編寫更好的代碼的12個Python技巧和竅門

另一個示例(有條件):

用于編寫更好的代碼的12個Python技巧和竅門

6.字符串乘法

在Python中,不僅可以乘以數字,還可以乘以字符串。

例如:

用于編寫更好的代碼的12個Python技巧和竅門

7.在一行中分配多個變量

您可以使用逗號分隔變量和值,從而將多個值分配給多個變量:

用于編寫更好的代碼的12個Python技巧和竅門

這在解構/解包序列(例如列表或元組)時也適用,并且是一種將序列的元素分配給各個變量的更優雅的方法,因為不需要使用循環或單獨索引序列的每個元素。

用于編寫更好的代碼的12個Python技巧和竅門

8.就地交換變量

在許多其他編程語言中,只能通過定義附加的temp(臨時)變量來交換兩個或多個變量的值。

假設您想交換x和y:

 

  1. temp = x 
  2.  
  3. x = y 
  4.  
  5. y = temp 

 

在Python中,有一個簡單的單行構造來交換變量,類似于單行中將值分配給多個變量的概念。

以下代碼與上面的代碼相同,但未使用任何臨時變量:

用于編寫更好的代碼的12個Python技巧和竅門

9.創建一個枚舉

Enum是Python中用于創建枚舉的類,枚舉是附加到唯一,恒定值的一組符號名稱。

為了創建一個枚舉,有必要創建一個類,它是您想要的枚舉的名稱。

剩下要做的就是列出變量并將它們設置為等于所需的值:

用于編寫更好的代碼的12個Python技巧和竅門

以訪問枚舉memberPaul為例,只需執行Person.Paul,它將返回0。

在Python中,可以通過將變量彼此相鄰列出并將它們設置為等于range函數來縮短上面的示例:

用于編寫更好的代碼的12個Python技巧和竅門

10.Range

通常,在遍歷列表時,您不僅要訪問在列表中具有位置的索引,還要訪問實際元素。

讓我們定義一個字符列表:

 

  1. x = ['a''b''c'

與其以標準方式遍歷它,不如訪問元素和索引:

用于編寫更好的代碼的12個Python技巧和竅門

使用枚舉

枚舉是Python的內置函數,它使我們能夠遍歷一個可迭代的對象并具有一個自動計數器。 它實質上將列表中的每個元素與相應的索引配對。 大多數新手,甚至一些高級程序員都沒有意識到這一點。

用于編寫更好的代碼的12個Python技巧和竅門

您可以將變量i和v更改為您可能希望使用的變量名稱。 例如,對于索引,計入enumerate(x)。

11.Dir 功能

dir()是Python3中強大的內置函數,它返回任何對象的屬性和方法的列表,即函數,模塊,字符串,列表,字典等。

當幾乎沒有該模塊的信息時,這非常有用,并且有助于更快地學習新模塊。

例如:

用于編寫更好的代碼的12個Python技巧和竅門

dir()通常用于調試目的。 dir()列出所傳遞參數的所有屬性的能力在分別處理許多類和函數時非常有用。

12.參數解包

有時稱為Splat或Scatter運算符*當需要將列表/元組中的參數解壓縮以進行需要單獨的位置參數的函數調用時,它們會起作用。

例如,內置的range()函數需要單獨的start和stop參數。 編寫函數調用時,可以使用*運算符將參數從列表或元組中解包:

讓我們定義一個簡單列表x = [1,2,3,4,5]

拆包操作員的一個常見示例是使用print:

 

  1. print(*x) // Result: 1 2 3 4 5 

這只是簡單地打印出列表中的每個元素,彼此之間用空格隔開,因為unpack運算符將列表中的所有元素作為參數傳遞給它們,因此上面代碼的翻譯將是print(1,2,3, 4,5)。

這個Python技巧經常在函數中使用,將方法調用接收到的所有參數"打包"到一個變量中。

例如:

用于編寫更好的代碼的12個Python技巧和竅門

上面的函數func可以接受無限數量的參數(args [0]和args [1]分別為您提供第一個和第二個參數)。

以類似的方式,詞典可以使用**運算符傳遞關鍵字參數。

讓我們定義一個稱為person的Python字典:

 

  1. person = {"name""Paul""age": 23, "location""London"

 

您可以使用**運算符將字典傳遞給函數。

傳入的字典將把鍵分解為function關鍵字參數,然后將值作為該參數傳遞的實際值。

例如:

用于編寫更好的代碼的12個Python技巧和竅門

最后的話

感謝您的閱讀,希望本文對您有所幫助!

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2020-07-19 08:11:54

Python代碼開發

2020-06-23 07:50:13

Python開發技術

2020-05-08 19:52:31

Reactreact.js前端

2025-01-14 00:01:01

2020-08-06 00:25:38

Python代碼開發

2018-04-19 14:30:25

LinuxVi編輯器

2020-08-06 16:34:48

Python開發工具

2021-02-23 10:48:30

Python代碼開發

2013-12-31 09:26:31

JavaScript技巧

2014-07-29 13:55:10

程序員代碼

2016-12-13 10:06:25

編寫Java單元測試技巧

2021-03-17 08:00:59

JS語言Javascript

2017-08-30 11:10:25

代碼

2017-08-30 19:32:08

代碼程序員編程

2019-06-27 10:35:40

JavaScript條件式匹配條件

2022-07-06 08:39:33

Python代碼

2017-09-14 12:45:35

2023-03-27 15:05:10

Python技巧

2022-11-24 10:34:05

CSS前端

2020-07-15 08:00:52

Rust語言技巧
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费黄色片视频 | 国产精品久久久久久久久免费桃花 | 国产精品免费一区二区三区 | 欧美寡妇偷汉性猛交 | 欧美天堂 | 狼色网 | 久久久国产一区二区三区四区小说 | 狠狠夜夜 | 精品一区二区三区在线视频 | 国产99久久久国产精品下药 | 久久成人精品视频 | 少妇一级淫片免费放播放 | 久久久久久国 | 久久综合一区 | 日韩中文字幕在线视频观看 | 91久久电影 | 99pao成人国产永久免费视频 | 免费h在线| 日本午夜视频 | 精品日韩一区二区三区av动图 | 黄色免费网址大全 | 亚洲一区二区三区免费视频 | 亚洲综合国产 | 一区二区三区日 | 第一av | 国产高清免费 | 精品1区2区 | 天天夜天天操 | 尤物在线精品视频 | 牛牛热在线视频 | 国产在线拍偷自揄拍视频 | 欧美一级片在线 | 国产亚洲精品久久午夜玫瑰园 | 黄色一级免费 | 涩涩视频网站在线观看 | 99九九久久 | 99热国产免费 | 美女黄网 | 欧美成人精品一区二区男人看 | 久久大香 | 日本不卡一区二区三区 |