日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 列表解析式_python列表解析式,字典解析式,集合解析式和生成器

發(fā)布時間:2023/12/19 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 列表解析式_python列表解析式,字典解析式,集合解析式和生成器 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一.列表解析式(列表推倒式):

功能:是提供一種方便的列表創(chuàng)建方法,所以,列表解析式返回的是一個列表.

1 lst = [1, 3, 5, 8, 10]

2 ll = [x+x for x in lst if x <= 5]

3 print ll

4 >>>[2, 6, 10]

二.字典解析式:

1 dic = {'a': 1, 'b': 2, 'c': 3}

2 d = {k: v for k, v in dic.items() if v >=2}

3 print d

4 >>>{'c': 3, 'b': 2}

三.集合解析式:

集合推導和列表推導的使用方法是類似的,只不中括號該改成大括號.

1 lst = [1, 3, 5, 8, 10]

2 aa = {x+x for x in lst if x <= 5} //注意集合解析式使用大括號!!!

3 print aa

4 >>>set([2, 10, 6]) //且輸出為一個集合!!!

四.生成器:

通過列表生成式,我們可以直接創(chuàng)建一個列表。但是,受到內(nèi)存限制,列表容量肯定是有限的。而且,創(chuàng)建一個包含100萬個元素的列表,不僅占用很大的存儲空間,如果我們僅僅需要訪問前面幾個元素,那后面絕大多數(shù)元素占用的空間都白白浪費了。

所以,如果列表元素可以按照某種算法推算出來,那我們是否可以在循環(huán)的過程中不斷推算出后續(xù)的元素呢?這樣就不必創(chuàng)建完整的list,從而節(jié)省大量的空間。在Python中,這種一邊循環(huán)一邊計算的機制,稱為生成器(Generator)。

python提供兩種方式創(chuàng)造生成器:

①生成器函數(shù):和常規(guī)函數(shù)一樣定義,不過用 yield而不是 return。

yield會一次返回一個結(jié)果,然后掛起,下次從掛起處繼續(xù)執(zhí)行,這樣就解決了內(nèi)存的限制。

注:其他方式會一次執(zhí)行完所有的結(jié)果,然后再一次返回一個結(jié)果,這樣,如果數(shù)據(jù)量大就會受到內(nèi)存的限制,而且會占用大存儲空間。

def gen(n):

for i in range(n):

yield i + 2

for item in gen(10):

print item

②生成器生成式:

生成器生成式和列表生成式類似,只是將方括號替換為括號。

generators = (x+2 for x in range(10))

友情鏈接:點我

python列表,字典,集合

初識模塊 import sys print(sys.path)#查看化境變量 print(sys.argv)#查看文件的相對路徑,但是在pachrm中 會自動轉(zhuǎn)為絕對路徑 import os #os. ...

python開發(fā)技巧---列表、字典、集合值的過濾

主要學習列表,字典,集合表達式的應用: 列表的解析式: 生成一個隨機列表: In [4]: datalist = [randint(-10,10) for _ in range(10)] In [5] ...

python進階---列表、字典、集合相關操作

基本概念 列表 序列是python中一個基本的數(shù)據(jù)結(jié)構(gòu),每個元素都有一個索引index 操作 # 創(chuàng)建列表 list = [] # 修改列表 list[2] = 2001 # 刪除列表 del lis ...

python生成式&colon;列表、字典、集合

python的3類生成式: 列表生成式 字典生成式 集合生成式 1.python列表生成式 my_data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(&quo ...

Python強化訓練筆記&lpar;一&rpar;——在列表,字典,集合中篩選數(shù)據(jù)

列表,字典,集合中根據(jù)條件篩選數(shù)據(jù),如下所示 列表:[-10,2,2,3,-2,7,6,9] 找出所有的非負數(shù) 字典:{1:90,2:55,3:87...} 找出所有值大于60的鍵值對 集合:{2,3 ...

python數(shù)據(jù)結(jié)構(gòu)-如何在列表、字典、集合中根據(jù)條件篩選數(shù)據(jù)

如何在列表.字典.集合中根據(jù)條件篩選數(shù)據(jù) 問題舉例: 過濾列表[1, 2, 5, -1, 9, 10]中的負數(shù) 篩選字典{“zhangsan”:97, "lisi":80, &qu ...

Python基礎&lowbar;&lowbar;字典、集合、運算符

之前討論的字符串.列表.元組都是有序?qū)ο?本節(jié)則重點討論無序?qū)ο?字典與集合.一.字典 列表是Python中的有序集合,列表中的序指的是列表中的元素與自然數(shù)集形成了一個一一對應的關系.例如L=['I' ...

Python中的字典與集合

今天我們來講一講python中的字典與集合 Dictionary:字典 Set:集合 字典的語法: Dictionary字典(鍵值對) 語法: dictionary = {key:value,key: ...

Python 列表生成式 &amp&semi; 字典生成式

Python 列表生成式 & 字典生成式 通過生成式可以更加簡潔地生成列表和字典 列表生成式 對比 直接生成數(shù)據(jù)后加入列表示例: user_list = list() for i in ran ...

python容器類型:列表,字典,集合等

容器的概念我是從C++的STL中學到的 什么是容器? 容器是用來存儲和組織其他對象的對象. 也就是說容器里面可以放很多東西,這些東西可以是字符串,可以是整數(shù),可以是自定義類型,然后把這些東西有組織的存 ...

隨機推薦

在drupal7中動態(tài)的為某個內(nèi)容類型添加字段

$myField_name = "my_new_field_name"; if(!field_info_field($myField_name)) // check if the ...

java中保留幾位小數(shù)

public class NumUtils { /** * 保留兩位小數(shù) * * @param d * @return */ public static String get2Wei(double d ...

Linux SSH 遠程操作與傳送文件

操作系統(tǒng):centos 6.5 x64 一.遠程連接:在進行l(wèi)inux 的?ssh遠程操作前,一定要確認linux 是否安裝了 openssh-clients,為了方便起見,一般用yum安裝即可:# ...

libvirt里的面向?qū)ο蟮腃語言

C語言:類的聲明和定義 // 通用父類的定義 struct _virClass { virClassPtr parent; unsigned int magic; char *name; size_t ...

201521123106 《Java程序設計》第10周學習總結(jié)

1. 本周學習總結(jié) 1.1 以你喜歡的方式(思維導圖或其他)歸納總結(jié)異常與多線程相關內(nèi)容. 2. 書面作業(yè) 本次PTA作業(yè)題集異常.多線程 finally 題目4-2 1.1 截圖你的提交結(jié)果(出現(xiàn)學 ...

聽翁愷老師mooc筆記(6)--指針運算

指針值加1就是將指針值加上sizeof(指針所指變量的類型) 1+1=2,那么指針加1是加上了1這個數(shù)字嗎?試一下,在代碼中定義了char數(shù)組,char也是整數(shù),數(shù)組名是ac,ac中有10個元素,0- ...

Spark&colon;scala集合轉(zhuǎn)化為DS&sol;DF

scala集合轉(zhuǎn)化為DS/DF case class TestPerson(name: String, age: Long, salary: Double) val tom = TestPerson( ...

【轉(zhuǎn)】Leveldb源碼分析——1

先來看看Leveldb的基本框架,幾大關鍵組件,如圖1-1所示. Leveldb是一種基于operation log的文件系統(tǒng),是Log-Structured-Merge Tree的典型實現(xiàn).LSM源 ...

layui---事件監(jiān)聽

在使用layui的form表單做驗證提交的時候,如果結(jié)合vue,或者是三級聯(lián)動的時候,就需要做事件監(jiān)聽了. 具體語法: form.on('event(過濾器值)', callback); 可以用于監(jiān)聽 ...

C&num; 后臺訪問webapi

具體在哪看見的忘記了. 異步: public static class CallWebAPI { public static async Task APIPost(stri ...

總結(jié)

以上是生活随笔為你收集整理的python 列表解析式_python列表解析式,字典解析式,集合解析式和生成器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。