码迷,mamicode.com
首页 > 编程语言 > 详细

python之 list、tuple、dict、set

时间:2016-08-24 19:08:30      阅读:352      评论:0      收藏:0      [点我收藏+]

标签:

2016-08-24   14:32:59

list

Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。

例如:定义一个列表L,里面存放了一些姓氏。print(l)就输入了整个列表。

1 >>> l = [,,,]
2 >>> print (l)
3 
4 [, , , ]

 

对列表的操作一般为:增、删、改、查。

查:

用下标取列表中的值,第一个元素的下标为0。

 1 l = [zhao,qian,sun,li,zhou,wu,zheng,wang]
 2 
 3 #
 4 print(l)
 5 [zhao, qian, sun, li, zhou, wu, zheng, wang]
 6 print(l[1])
 7 qian
 8 print(l[-1])
 9 qian
10 print(l[1:])
11 [qian, sun, li, zhou, wu, zheng, wang]
12 print(l[1:5])
13 [qian, sun, li, zhou]
14 print(l[5:1:-1])      #从下标为5的元素开始,-1:就是倒着往前步长为1 取元素,取到下标为1的位置停止。
15 [wu, zhou, li, sun, qian]

 

 

增:

增加一个元素

 1 l = [zhao,qian,sun,li,zhou]
 2 #append, 在列表末尾追加
 3 print(l)
 4 [zhao, qian, sun, li, zhou]
 5 l.append("zhou")
 6 print(l)
 7 [zhao, qian, sun, li, zhou, zhou]
 8 
 9 #insert,根据索引插入任何想插入的位置
10 l.insert(1,wang)
11 print(l)
12 [zhao, wang, qian, sun, li, zhou, zhou]

 

 

改:

修改列表内的元素。

 1 #修改
 2 l = [zhao,qian,sun,li,zhou]
 3 print(l)
 4 [zhao, qian, sun, li, zhou]
 5 
 6 l[1] = lao wang
 7 print(l)
 8 [zhao, lao wang, sun, li, zhou]
 9 
10 #批量插入
11 l[2:4] = [a,b,c]
12 print(l)
13 [zhao, lao wang, a, b, c, zhou]

 

 删:

 1 #
 2 l = [zhao,qian,sun,li,zhou]
 3 print(l)
 4 l.pop(2)    #通过下标删除内容
 5 print(l)
 6 l.pop()     #pop括号内不加参数,默认删除最后一个元素
 7 print(l)
 8 del l[1]    #删除索引指的元素
 9 print(l)
10 del l
11 print(l)
12 ********************
13 [zhao, qian, sun, li, zhou]
14 [zhao, qian, li, zhou]
15 [zhao, qian, li]
16 [zhao, li]
17 
18 print(l)
19 NameError: name l is not defined     #因为del l ,把整个l 列表删除了,所以print的时候报错了

 

 

排序:

 1 #排序
 2 l = [zhao,qian,sun,li,zhou,wang]
 3 print(l)
 4 l.sort()        #默认从小到大排序,因为reverse的默认值是False
 5 print(l)
 6 l.sort(reverse=True)        #sort括号里加reverse=True从大到小排序
 7 print(l)
 8 l.reverse()     #反转顺序
 9 print(l)
10 l.reverse()     
11 print(l)
12 ******************
13 [zhao, qian, sun, li, zhou, wang]
14 [li, qian, sun, wang, zhao, zhou]
15 [zhou, zhao, wang, sun, qian, li]
16 [li, qian, sun, wang, zhao, zhou]
17 [zhou, zhao, wang, sun, qian, li]

 

 

身份判断

#身份判断
a = [zhao,qian,sun,li,zhou,wang]
print(type(a) is list)
print(type(a) is str)

*************************
True
False

 

 

tuple

另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改。

1 t = (zhao,qian,sun,li,zhou,wang)
2 print(t)
3 print(t[1])
4 
5 *************************
6 (zhao, qian, sun, li, zhou, wang)
7 qian

 

dict

Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。用dict可以装下整个世界,你信吗?

 1 #定义一个字典,存入一些用户信息
 2 dic = {"name":"ligq","age":23,job:IT}
 3 print(dic)      #输出整个字典
 4 #遍历dic字典中的所有 键
 5 for i in dic:
 6     print(i,end= )
 7 print()
 8 #遍历dic字典中的所有 值
 9 for i in dic:
10     print(dic.get(i),end= )           #用dict的 get(键)方法,取字典这对应的 值
11 print()
12 #遍历dic字典中的所有 键和值 ---推荐使用
13 for i in dic:
14     print(i,dic[i],end= )
15 print()
16 #使用字典的items方法,遍历dic字典中的所有 键和值
17 for i,v in dic.items():
18     print(i,v,end= )
19 print()
20 dic1 = {1:23423,8:32,2:23,5:42}
21 print(dic1)
22 print(dic1.values())        #获取值
23 print(dic1.items())         #获取键-值对
24 print(dic1.keys())          #获取键
25 
26 print(dic1.pop(1))          #删除键是1的键值对,并返回删除的值
27 print(dic1)     
28 
29 
30 *******************************
31 {age: 23, job: IT, name: ligq}
32 age job name 
33 23 IT ligq 
34 age 23 job IT name ligq 
35 age 23 job IT name ligq 
36 {8: 32, 1: 23423, 2: 23, 5: 42}
37 dict_values([32, 23423, 23, 42])
38 dict_items([(8, 32), (1, 23423), (2, 23), (5, 42)])
39 dict_keys([8, 1, 2, 5])
40 23423
41 {8: 32, 2: 23, 5: 42}

 

python之 list、tuple、dict、set

标签:

原文地址:http://www.cnblogs.com/noube/p/5804243.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!