當前位置:成語大全網 - 書法字典 - 關於python列表生成的壹個問題

關於python列表生成的壹個問題

python的列表生成公式

I. R .防止人物逃跑

打印r“a \ nb”

運行結果:

a\nb

其次,獲取變量類型

a = r"a\nb "

打印類型(a)

運行結果:

& lt“字符串”類型& gt

第三,判斷類型

a = r"a\nb "

print isinstance(a,str)

運行結果:

真實的

第四,叠代鏈表、元組、字典和集合。

4.1常用方式

列表=

如果y & gt則打印[x * y for x in list 1 for y in list 2;1和y & lt3]

運行結果是:

['aa ',' bb ',' cc']

第六,列表生成器

我們可以通過列表生成直接創建壹個列表。但是,由於內存限制,列表容量肯定是有限的。而且創建壹個包含654.38+0萬個元素的鏈表,不僅占用了大量的存儲空間,如果我們只需要訪問前幾個元素,後面大部分元素占用的空間都會被浪費掉。

那麽,如果列表元素可以按照某種算法計算出來,我們是否可以在循環的過程中連續計算後續的元素呢?這樣,就不需要創建壹個完整的列表,從而節省了大量空間。在Python中,這種邊循環邊計算的機制被稱為生成器。

只要將列表生成類型的[]更改為(),就會創建壹個生成器:

g =(範圍(10)中x的x * x)

生成器保存算法。每次調用next(g)時,計算g的下壹個元素的值,直到計算完最後壹個元素,當沒有更多的元素時,拋出StopIteration錯誤。

但是我們壹般是通過for循環叠代,不需要擔心StopIteration的錯誤。

對於g中的n:

打印(n)