首页 > 编程语言 > 详细

python 【3】

时间:2019-09-22 21:41:27      阅读:93      评论:0      收藏:0      [点我收藏+]

1. 列表、元组操作

列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作

定义列表

1
names = [‘Alex‘,"Tenglan",‘Eric‘]

通过下标访问列表中的元素,下标从0开始计数

1
2
3
4
5
6
7
8
>>> names[0]
‘Alex‘
>>> names[2]
‘Eric‘
>>> names[-1]
‘Eric‘
>>> names[-2#还可以倒着取
‘Tenglan‘

切片:取多个元素 

技术分享图片
 1  >>> names = ["Alex","Tenglan","Eric","Rain","Tom","Amy"]
 2   >>> names[1:4]  #取下标1至下标4之间的数字,包括1,不包括4
 3   [Tenglan, Eric, Rain]
 4   >>> names[1:-1] #取下标1至-1的值,不包括-1
 5   [Tenglan, Eric, Rain, Tom]
 6   >>> names[0:3] 
 7   [Alex, Tenglan, Eric]
 8   >>> names[:3] #如果是从头开始取,0可以忽略,跟上句效果一样
 9   [Alex, Tenglan, Eric]
10  >>> names[3:] #如果想取最后一个,必须不能写-1,只能这么写
11  [Rain, Tom, Amy] 
12  >>> names[3:-1] #这样-1就不会被包含了
13  [Rain, Tom]
14  >>> names[0::2] #后面的2是代表,每隔一个元素,就取一个
15  [Alex, Eric, Tom] 
16  >>> names[::2] #和上句效果一样
17  [Alex, Eric, Tom]
18 
19 
20 
21 #步长切片
22 print(names[0:7:2])
23 #  0  -1  可以省略
24 print(names[::2])
View Code

 

追加

>>> names
[Alex, Tenglan, Eric, Rain, Tom, Amy]
>>> names.append("我是新来的")
>>> names
[Alex, Tenglan, Eric, Rain, Tom, Amy, 我是新来的]

 

插入

技术分享图片
1 >>> names
2 [Alex, Tenglan, Eric, Rain, Tom, Amy, 我是新来的]
3 >>> names.insert(2,"强行从Eric前面插入")
4 >>> names
5 [Alex, Tenglan, 强行从Eric前面插入, Eric, Rain, Tom, Amy, 我是新来的]
6 
7 >>> names.insert(5,"从eric后面插入试试新姿势")
8 >>> names
9 [Alex, Tenglan, 强行从Eric前面插入, Eric, Rain, 从eric后面插入试试新姿势, Tom, Amy, 我是新来的]
View Code

 

修改

技术分享图片
>>> names
[Alex, Tenglan, 强行从Eric前面插入, Eric, Rain, 从eric后面插入试试新姿势, Tom, Amy, 我是新来的]
>>> names[2] = "该换人了"
>>> names
[Alex, Tenglan, 该换人了, Eric, Rain, 从eric后面插入试试新姿势, Tom, Amy, 我是新来的]
View Code

 

删除

技术分享图片
>>> del names[2] 
>>> names
[Alex, Tenglan, Eric, Rain, 从eric后面插入试试新姿势, Tom, Amy, 我是新来的]
>>> del names[4]
>>> names
[Alex, Tenglan, Eric, Rain, Tom, Amy, 我是新来的]
>>> 
>>> names.remove("Eric") #删除指定元素
>>> names
[Alex, Tenglan, Rain, Tom, Amy, 我是新来的]
>>> names.pop() #删除列表最后一个值 
我是新来的
>>> names
[Alex, Tenglan, Rain, Tom, Amy]
View Code

 

扩展

技术分享图片
1 >>> names
2 [Alex, Tenglan, Rain, Tom, Amy]
3 >>> b = [1,2,3]
4 >>> names.extend(b)
5 >>> names
6 [Alex, Tenglan, Rain, Tom, Amy, 1, 2, 3]
View Code

 

拷贝

技术分享图片
>>> names
[Alex, Tenglan, Rain, Tom, Amy, 1, 2, 3]

>>> name_copy = names.copy()
>>> name_copy
[Alex, Tenglan, Rain, Tom, Amy, 1, 2, 3]

#  复制  copy  浅copy  多层列表只会copy第一层
names.append([3,4])
names2 = names.copy()
names[4] = TiAmo
names[-1][0] = 2
print(names,names2)
‘‘‘
共用账号 联合账号 这种情况会用到浅COPY  把共用部分放到第二层
‘‘‘


#  深copy  会完全copy   必须调用copy 模块
‘‘‘
import  copy

names2 = copy.deepcopy(names)
‘‘‘
View Code

 

统计

技术分享图片
1 >>> names
2 [Alex, Tenglan, Amy, Tom, Amy, 1, 2, 3]
3 >>> names.count("Amy")
View Code

 

排序&翻转

技术分享图片
 1 >>> names
 2 [Alex, Tenglan, Amy, Tom, Amy, 1, 2, 3]
 3 >>> names.sort() #排序
 4 Traceback (most recent call last):
 5   File "<stdin>", line 1, in <module>
 6 TypeError: unorderable types: int() < str()   #3.0里不同数据类型不能放在一起排序了,擦
 7 >>> names[-3] = 1
 8 >>> names[-2] = 2
 9 >>> names[-1] = 3
10 >>> names
11 [Alex, Amy, Amy, Tenglan, Tom, 1, 2, 3]
12 >>> names.sort()
13 >>> names
14 [1, 2, 3, Alex, Amy, Amy, Tenglan, Tom]
15 
16 >>> names.reverse() #反转
17 >>> names
18 [Tom, Tenglan, Amy, Amy, Alex, 3, 2, 1]
View Code

 

获取下标

技术分享图片
1 >>> names
2 [Tom, Tenglan, Amy, Amy, Alex, 3, 2, 1]
3 >>> names.index("Amy")
4 2 #只返回找到的第一个下标
View Code

 

循环

技术分享图片
1 # 列表循环
2 for i in names :
3     print(i)
View Code

 

元组

元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表

语法

1
names = ("alex","jack","eric")

它只有2个方法,一个是count,一个是index,完毕。 

python 【3】

原文:https://www.cnblogs.com/garrett7/p/11568822.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!