标签:python数据类型
*列表生成
*元组
*字典
以下实验均由2.7版本操作完成
一、列表生成
1.语法:
range(starti stop step) 2.7版本
list(range(starti stop step))) 3.5版本
生成一个从数字1到10的列表;
print(list.pop()); a=list(range(1,10)); print(a) ## [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2.通过循环生成列表:
语法:[x for x in range(starti,stop)]
第一个“x”:是从第几开始
第二个“x”:是到第几个数为止
print([x for x in range(1,11)]); ###### [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
3.用列表推导式生成100内的大于20的偶数
print [x for x in range(0,101) if x % 2==0 and x>20]
[expr for iter_var in iterable if cond_expr]
加入判断,只有满足条件的内容,才把iterable放入到iter中。
b = range(1,11)
print b #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
c = range(1,11,2)
print c #[1, 3, 5, 7, 9]
二、元组
1.什么是元组:也是一种容器类型,元组的元素不能修改,元组使用小括号包裹数据
2.如何创建:在括号中添加元素,用逗号隔开
tup1=(‘kate‘,‘lisa‘,1997,2000); tup2=(1,2,3,4,5) tup3=‘a‘,‘b‘,‘c‘,‘d‘ print(tup1); print(tup2); print(tup3); ## (‘kate‘, ‘lisa‘, 1997, 2000) (1, 2, 3, 4, 5) (‘a‘, ‘b‘, ‘c‘, ‘d‘)
3.如何创建空元组
tup=()
元组中只包含一个元素时,需要在元素后面添加逗号
元组与字符串类似,下标也是从0开始,可以进行截取组合
4.访问元组:
元组可以使用下标该问值
tup1=(‘kate‘,‘lisa‘,1997,2000); print(tup1[0:2]); ## (‘kate‘, ‘lisa‘)
5.修改元组
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合
eg:
tup1=(‘abc‘,‘def‘); tup2=(‘lisi‘,‘kate‘); tup3=tup1+tup2; print(tup3); ## (‘abc‘, ‘def‘, ‘lisi‘, ‘kate‘)
6.删除元组
元组中的元素是不允许删除的,可以用del语句来删除整个元组
del 元组;//执行完语句会报错
7.元组运算符
组合、复制,运算后生成新的元组
a.len() :显示列表的长度
b.连接+
c.复制
print((1,2,3)*2) ## (1, 2, 3, 1, 2, 3)
d. 元素是否存在 (返回值为bool值)
print(3 in (1,2,3)); ## True
e.迭代(循环遍历元组元素)
语法:
for x in 元组:
print(x)
eg:
list=(‘lisi‘,‘kate‘,‘zhangsan‘,‘1900‘); for x in list: print(x); ## lisi kate zhangsan 1900
8.元组截取
a=(‘how‘ ,‘are‘,‘you‘)
a[1]
a[-2]
a[1:] //are you
9.无关闭分隔符
x,y=1,2
print(x,y) //2.7版本
##
(1, 2)
10.元组内置函数
a.len(t):查看列表长度
b.max(t):列表内最大值
c.min(t):列表内最小值
d.tuple(lists) 将列表转换为元组
三、字典
由键和值,成对组成的对象,字典也被称为关联数组(hash列表)
对象=数据+方法
1.字典特点:
①.无序(通过键实现元素存取)
②.可变: 通过键改变值
eg:
x={‘ename‘:‘lisi‘,‘sx‘:100,‘yw‘:90,‘yy‘:60} x[‘ename‘]=‘kate‘ print(x); ### {‘yy‘: 60, ‘ename‘: ‘kate‘, ‘sx‘: 100, ‘yw‘: 90}
③.异构:支持多种数据类型
④.嵌套:可以在键值对中的值部分出现字典、列表、元组
x={‘ename‘:‘lisi‘,‘sx‘:100,‘yw‘:90,‘yy‘:(2,3)} x[‘ename‘]=‘kate‘ print(x); ### {‘yy‘: (2, 3), ‘ename‘: ‘kate‘, ‘sx‘: 100, ‘yw‘: 90}
如果同一个键同时出现两次,后一个值会被记住
2.字典定义:
方法一:{key1:value1,key2:value2...}key1必须用引号包裹
注意:字典中的键必须是唯一的,而值可以不唯一
方法二:dict() 内置函数,指定健值
x=dict(ename=‘fbb‘,sx=95,yw=65)
该问字典里的值:x[‘ename‘]
x=dict(ename=‘fbb‘,sx=95,yw=65); print(x[‘ename‘]); ### fbb
3.修改字典里的值:
语法:x[key]=value
添加新元素:x[newkey]=newvalue
x={‘a‘:1,‘b‘:2,‘c‘:3}; x[‘c‘]=5; print(x); ### {‘a‘: 1, ‘c‘: 5, ‘b‘: 2}
4.删除字典元素 (x字典)
1删除字典中的元素
del x[‘key‘]
2.清空字典所有条目
x.clear()
3.删除整个字典
del x(x为字典名)
5.变量解包:items( )将字典转化为键、值作为元组的列表
语法:x.items()
eg:
x={‘a‘:1,‘b‘:2,‘c‘:3}; print (x.items()); ### [(‘a‘, 1), (‘c‘, 3), (‘b‘, 2)]
只取键:keys()
x.keys()
x={‘a‘:1,‘b‘:2,‘c‘:3}; print(x.keys()); ### [‘a‘, ‘c‘, ‘b‘]
只取值:values()
x.values()
x={‘a‘:1,‘b‘:2,‘c‘:3}; print(x.values()); ### [1, 3, 2]
has_key():判断是否存在某个键,返回结是bool值
x.has_key(‘键‘)
eg:
x={‘a‘:1,‘b‘:2,‘c‘:3}; print (x.has_key(‘a‘)); ### True
len():取得字典中键值对个数
len(x)
eg:
x={‘a‘:1,‘b‘:2,‘c‘:3}; print(len(x)); ### 3
update():在原字典上合并字典,键相同时会覆盖
语法:x1.update(x2);
x1={‘a‘:1,‘b‘:2,‘c‘:3}; x2={‘a‘:3,‘d‘:4,‘e‘:5}; x1.update(x2); print(x1); #### {‘a‘: 3, ‘c‘: 3, ‘b‘: 2, ‘e‘: 5, ‘d‘: 4}
本文出自 “清风与你” 博客,谢绝转载!
标签:python数据类型
原文地址:http://super12138.blog.51cto.com/12190541/1916041