Python之-在字典、列表、集合中刷选数据
一、元组、字典、列表的遍历
1、元组遍历
元组的遍历借助 range() 函数,基本思想是通过元组的长度使用for循环进行遍历
1 #troup
2 s = ["aaa","bbb","ccc"]
3 for i in range(len(s)):
4 print s[i]
元组是无法进行重新赋值的,需要将元组进行转换后在进行重新赋值,如转换为list
2、列表遍历
列表的遍历可以直接使用for循环,也可以借助 range() 函数
1 #list
2 #直接遍历
3 s = ["aaa","bbb","ccc"]
4 for i in s:
5 print i
6 #借助range函数
7 s = ["aaa","bbb","ccc"]
8 for i in range(len(s)):
9 print s[i]
3、字典遍历
1 #dict
2 res = {'aa':1,'bb':2,'cc':3}
3 for key in res:
4 print res
二、元组,列表,字典之间的转换
1、对元组进行转换
1 troup = ("aaa","bbb","ccc")
#元组转换列表 2 print list(troup)
3 #元组转换为字符串
4 fruits.__str__()
2、对列表进行转换
1 #列表转换为元组:
2 tuple(fruit_list)
3
4 #列表转换为字符串:
5 str(fruit_list)
3、对字典进行转换
1 #dict
2 res = {'aa':1,'bb':2,'cc':3}
3 #字典转换为元组
4 print tuple(res)
5 #将字典的value转换为列表
6 print list(res.values())
Ctrl + / 行注释/取消行注释
Ctrl + Shift + / 块注释
列表:filter函数—— filter(lambda x:x>=0,data)
列表解析——b = [x for x in data if x>=0]
字典:字典解析——s = {k:v for k,v in d.iteritems() if v>90}
集合:集合解析——d = { x for x in s if x%3==0}
# -*- coding: utf-8 -*-
#在列表中选择
data = [1,5,-3,-8,7,6,-5,10]
res = []
for x in data:
if x>=0:
res.append(x)
print res
import timeit
from random import randint
data = [randint(-10,10) for _ in xrange(10)]
print data
a = filter(lambda x:x>=0,data)
print a
#列表解析
b = [x for x in data if x>=0]
print b
#在字典中选择
d = {x:randint(60,100) for x in xrange(1,21)}
print d
s = {k:v for k,v in d.iteritems() if v>90}
print s
#集合解析
data = [1,5,-3,-8,7,6,-5,12]
s = set(data)
print s
d = { x for x in s if x%3==0}
print d