生活中, 我們會遇到各種各樣的資料,但是總得需要容器去裝它們,python中的資料結構——列表,元組,字典就能派上用場,但是資料多了起來,我們有時候需要進行篩選就可以用到下面的一些方法比如給定乙個列表,讓我們剔除裡面的負數,我們通常想到的是迭代法
[1,
22,-4
,3,-
9,8]
看**
a =[1
,22,-
4,3,
-9,8
]b =
for i in a:
if(i>0)
:print
(b)
今天就要講講其它的辦法來解決這些問題
一、列表解決方案
1、 先生成乙個隨機的列表
2、運用列表解析的方式去實現資料篩選
**如下:
from random import randint
#第一步生成隨機數列
data =
[randint(-10
,10)for _ in
range(10
)]#在-10到10之間隨機生成數列
print
(data)
#第二步,用列表解析的方式
我們通過時間對比,第二種方式的效率比第一種高10倍
二、字典解決方案
我們先生成乙個字典,比如生成班上學上的成績,班上有10個人,我們要進行篩選分數及格的同學
from random import randint
a =print
(a)
有列表解析,同樣也有字典解析
from random import randint
a =print
(a)b =
#同時迭代鍵和值,然後進行判斷
三、集合解決方案
借用列表解決方案中生成隨機列表的例子,我們直接把其轉換成集合的形式
from random import randint
a =[randint(-10
,10)for i in
range(1
,11)]
print
(a)b =
set(a)
#把列表a變成集合
我們再進行乙個特殊的篩選,我們要得到能被5整除的數,這裡要用到集合解析
from random import randint
a =[randint(-10
,10)for i in
range(1
,11)]
b =set
(a)#把列表a變成集合
print
(b)c =
print
(c)
方法和列表解析一模一樣!!!
所以,你學會了嘛
如何在列表,字典,集合中根據條件篩選資料?
如何在列表,字典,集合中根據條件篩選資料?1 過濾掉列表 3,9,1,10,20,2 中的負數 2 篩出字典中值大於90的項 3 篩出集合中能被3整除的元素 解決方案 1 列表 方法1 列表解析 x for x in data if x 0 from random import randint l ...
如何在列表, 字典, 集合中根據條件篩選資料
x for x in data if x 0 列表解析 filter lambda x x 0,data filter解析from random import randint randint?randint?列印函式資訊 l randint 10,10 for in range 10 x for x...
如何在列表 字典和集合中根據條件篩選資料
實際案例 在實際開發過程中,常常遇到如下幾種情況 故應學會在列表 字典和集合中根據條件篩選資料。1.列表 通常我們會採用如下 進行篩選 data 1,5,3,2,6,0,9 res for x in data if x 0 print res對此,我們可以使用python中的filter 具體做法如...