自学pythonのNo.3
- 引语
- 小谈python列表
- 增append
- 删pop/del/clear
- 插insert/extend
- 查index/count/remove
- 改操作
- 切片(重点)
引语
记录学习路程,抛砖引玉。如有更好的算法或者出现错误,欢迎指点。
小谈python列表
- 列表中元素类型可以不相同,支持数字,字符串甚至可以包含列表(所谓嵌套)
- 写在方括号 [] 之间、用逗号分隔开
- 可以被索引和截取,截取的语法格式:变量[头下标:尾下标]
- 列表中元素可变
至此,先来个开胃菜
a=['甲','乙','丙','丁','戊','己','庚','辛']
b=['壬','癸']
print(a[2]) #因为是从0数起所以输出的是第三个元素丙
print(a[0:3]) #打印a中第一个到第三个元素。注意:左闭右开
print(a[2:-1]) #打印a中第三个到倒数第二个元素
print(a+b) #将列表a,b相加
print(b*3) #将列表b乘以三
"""
丙
['甲', '乙', '丙']
['丙', '丁', '戊', '己', '庚']
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', '壬', '癸']
['壬', '癸', '壬', '癸', '壬', '癸']
"""
话不多说,直接上主菜,客官们细品
增append
a=['甲','乙','丙','丁','戊','己','庚','辛']
b=['壬','癸']
c='first','second'
d='third'
print(a)
print("******************")
print(b)
print("******************")
b.append(a)
print(b)
print("******************")
a.append(c)
print(a)
print("******************")
a.append(d)
print(a)
"""
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛']
******************
['壬', '癸']
******************
['壬', '癸', ['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛']]
******************
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', ('first', 'second')]
******************
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', ('first', 'second'), 'third']
"""
删pop/del/clear
a=['甲','乙','丙','丁','戊','己','庚','辛']
print(a)
a.pop()#默认删除最后一个元素并返回被删除的值
print(a)
a.pop(2)
print(a)
a.pop(-3)
print(a)
print("******************")
del a[4]
print(a)
print("******************")
a.clear()
print(a)
"""
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛']
['甲', '乙', '丙', '丁', '戊', '己', '庚']
['甲', '乙', '丁', '戊', '己', '庚']
['甲', '乙', '丁', '己', '庚']
******************
['甲', '乙', '丁', '己']
******************
[]
"""
插insert/extend
a=['甲','乙','丙','丁','戊','己','庚','辛']
b=['壬','癸']
c='first','second'
d='third'
print(a)
print("******************")
a.insert(2,d)
print(a)
print("******************")
a.insert(-3,c)
print(a)
print("******************")
a.extend(b)
print(a)
"""
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛']
******************
['甲', '乙', 'third', '丙', '丁', '戊', '己', '庚', '辛']
******************
['甲', '乙', 'third', '丙', '丁', '戊', ('first', 'second'), '己', '庚', '辛']
******************
['甲', '乙', 'third', '丙', '丁', '戊', ('first', 'second'), '己', '庚', '辛', '壬', '癸']
"""
查index/count/remove
pi=['3','.','1','4','1','5','9','2','6','5','3','5','8','9']
a=pi.index('9') #返回从左开始匹配到的第一个9的索引
print(a)
b=pi.count('5') #计算5的个数
print(b)
print("******************")
print(pi)
pi.remove('1') #移除列表中从左开始的1
print(pi)
"""
6
3
******************
['3', '.', '1', '4', '1', '5', '9', '2', '6', '5', '3', '5', '8', '9']
['3', '.', '4', '1', '5', '9', '2', '6', '5', '3', '5', '8', '9']
"""
改操作
a=['甲','乙','丙','丁','戊','己','庚','辛']
b=['壬','癸']
c='first','second'
d='third'
print(a)
print("******************")
a[2]=d
print(a)
print("******************")
a[-3]=b
print(a)
print("******************")
a[1]=c
print(a)
"""
['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛']
******************
['甲', '乙', 'third', '丁', '戊', '己', '庚', '辛']
******************
['甲', '乙', 'third', '丁', '戊', ['壬', '癸'], '庚', '辛']
******************
['甲', ('first', 'second'), 'third', '丁', '戊', ['壬', '癸'], '庚', '辛']
"""
切片(重点)
列表名称[首下标:末下标:公差]
左往右顺数是从零下标开始而从右往左倒数是从1下标(即-1)开始数,细品c和g
a=['甲','乙','丙','丁','戊','己','庚','辛','壬','癸']
print("a",a)
b=a[0:2]
print("b",b)
c=a[4:-1] #因为左闭右开所以取到的下标是5到倒数2
print("c",c)
d=a[0:-1]
print("d",d)
e=a[4:]
print("e",e)
f=a[0:4:2]
print("f",f)
g=a[-1:-6:-1]
print("g",g)
h=a[0::]
print("h",h)
i=a[::-1]
print("i",i)
j=a[::-2]
print("j",j)
"""
a ['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', '壬', '癸']
b ['甲', '乙']
c ['戊', '己', '庚', '辛', '壬']
d ['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', '壬']
e ['戊', '己', '庚', '辛', '壬', '癸']
f ['甲', '丙']
g ['癸', '壬', '辛', '庚', '己']
h ['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', '壬', '癸']
i ['癸', '壬', '辛', '庚', '己', '戊', '丁', '丙', '乙', '甲']
j ['癸', '辛', '己', '丁', '乙']
"""