一、元组
1、Python的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
2、创建元组
tup = ("python","java","javascript",1,2,3)
tup1 = (1,2,3,4,5,6)
tup2 = ("a","b","c","d")
(1)、 创建空元组
tup = ()
(2)、元组只有一位时,用逗号结尾。
tup = (30,)
3、元组常用操作
元素索引、截取
与列表相比没有了,append()、pop()、remove()、insert()方法。
cmp(tuple1,tuple2):比较两个元组元素。
len(tuple):计算元组元素长度。
min():返回元组元素最小值。
max():返回元组元素最大值。
tuple(seq):将列表转化为元组。
二、字典
1、字典
字典是另一种可变容器模型,且可存储任意类型对象,同时也是Python中唯一映射类型。
映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希表。
2、字典操作
(1)、创建空字典
dict = {}
(2)、创建非空字典
dict = {key1:value1,key2:value2,key3:value2}
dict ={"naem":"laowang","age":38}
dict = {1:2,3:4,5:6}
(3)、字典基本操作
a.访问字典的key值
dict = {"name":"laowang","age":"45","address":"xibei"}
for key in dict.keys():
print key #输出列表["name","age","address"]
b.访问字典的value值
dict[key] #返回key值对应的value值
如:dict["name"] #返回"laowang"这个value值
c.修改字典
dict = {"name":"laowang","age":"23","address":"xibei"}
dict["age"]=34
dict["address"]="huabei"
输出结果:
dict ={"name":"laowang","age":34,"address":huabei}
d.删除字典元素
dict ={"name":"laowang","age":34,"address":"xibei"}
del dict["name"] #删除键是“name”的条目
print dict #结果为["age":34,"address":"xibei"]
dict.clear() #清空字典所有条目
del dict #删除字典
e.字典的特性
字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
两个重要的点需要记住:
不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,
键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行。
(3)、字典常用方法
cmp(dict1,dict2) 比较两个字典元素
len(dict) 计算子典元素个数,既键的总数
str(dict) 输出课打印的字符串表示
type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型
dict.clear()
dict.copy() 返回一个字典的浅复制
dict.fromkeys(seq[,val]) 创建一个新字典,一序列seq中元素做字典的键,val做键多对应的初始值。
dict.get(key,default = None) 返回指定的值,如果值不在字典中就返回default值
dict.has_key(key) 如果键在字典dict中返回true,否则返回false
dict.items() 以列表返回可遍历的的(键、值)元组数组
dict.keys() 以列表返回一个字典所有的键
dict.setdefault(key,default=None) 和get()类似,但是如果建不存在于字典中,将会添加键并将值设为default
dict.update(dict2) 把字典dict2的键/值对更新到dict里
dict.values() 以列表返字典中的所有值
pop(key[,default]) 删除字典给定键key所对应的值,返回值为删除的值
popitem() 随机返回并删除字典中的一对键和值
常用例子:
有如下值集合 [
11
,
22
,
33
,
44
,
55
,
66
,
77
,
88
,
99
,
90
],将所有大于
66
的值保存至字典的第一个key中,将小于
66
的值保存至第二个key的值中。
即: {
'k1'
: 大于
66
,
'k2'
: 小于
66,‘k3’:等于66
}
list =[11,22,33,44,55,66,77,88,99,90] dict = {"k1":[],"k2":[],"k3":[]} for i in list: if i>66: if dict.has_key("k1"): dict["k1"].append(i) elif i==66: if dict.has_key("k3"): dict["k3"].append(i) else: if dict.has_key("k2"): dict["k2"].append(i) print dict
字典和列表很相似,很多使用方法都一样,注意他们的区别就能理解它们。
新手发表,有错望理解。