Python基础
我们准备利用17天时间,将 Python 基础的刻意练习分为如下任务:
Task01:变量、运算符与数据类型(1day)
Task02:条件与循环(1day)
Task03:列表与元组(2day)
Task04:字符串与序列(1day)
Task05:函数与Lambda表达式(2day)
Task06:字典与集合(1day)
Task07:文件与文件系统(2day)
Task08:异常处理(1day)
Task09:else 与 with 语句(1day)
Task10:类与对象(2day)
Task11:魔法方法(2day)
Task12:模块(1day)
Task 03 列表与元组
1.列表
列表由一系列按特定顺序排列的元素组成。里面的元素可以是任何类型的数据,每个元素用逗号隔开。在python中用中括号括起来,例如:
person_01 = ['xiao_ming',170.5,18,'student']
print(person_01) # ['xiao_ming',170.5,18,'student']
(1)访问列表内的元素
因为列表是有序的,只需要把该元素的位置和索引告诉python即可,例如:
person_01 = ['xiao_ming',170.5,18,'student']
print(person_01[0]) #xiao_ming
print(person_01[2]) #18
print(person[0:3]) #['xiao_ming',170.5,18]
要注意列表的索引是从0开始,并不是从1开始的;
而且如上述例子,切片用时不包括括号右边的元素,是一个左闭右开区间;
区间还可以用负数表示,最后一个元素从-1开始
添加步长-1可以实现倒序输出列表,例如:
person_01 = ['xiao_ming',170.5,18,'student']
print(person[-2]) #18
print(person[:,-1]) #['student',18,170.5,'xiao_ming']
(2)修改、添加、删除列表内元素
要修改列表元素时,可指定列表名和要修改的列表元素的索引即可,例如:
person_01 = ['xiao_ming',170.5,18,'student']
person_02 = person_01[0] = 'xiao_hong'
print(person_02) # ['xiao_hong',170.5,18,'student']
往列表添加新元素时,可以使用append()方法在末尾添加,或者用insert()方法插入,例如:
person_01 = ['xiao_ming',170.5,18,'student']
person_01.append(10086)
print(person_01) #['xiao_ming',170.5,18,'student',10086]
person_01.insert[0,'id_o1']
print(person_01) #['id_01','xiao_ming',170.5,18,'student',10086]
从列表删除元素有多种方法:
del 删除列表特定位置的元素,元素不可再被访问
pop(index)删除特定位置元素,index = 0时为删除末尾元素,元素还可以被访问
remove()删除列表内知道值的第一个元素,元素可再次被访问
person_01 = ['id_01','xiao_ming',170.5,18,'student',10086]
#使用del方法
del person_01[0]
print(person_01) #['xiao_ming',170.5,18,'student',10086]
#使用pop()方法
phone_num = person_01.pop()
print(phone_num) #10086
print(person_01) #['xiao_ming',170.5,18,'student']
#使用remove()方法
num = [0,1,0,1,2,5,6,5,5]
num.remove(0)
print(num) #[1,0,1,2,5,6,5,5]
for i in num:
if i == 5:
num.remove(5)
print(num) #[1,0,1,2,6]
列表还有很多其他的方法,例如sort()可以从小到大排列列表内的元素;len()可以确定列表的长度等等
2.元组
上述的列表适用于储存程序运行期间的可变数据集,而元组则记录了一系列不可改变的元素值,再python中用小括号括起来,例如:
names = ('xiao_ming','xiao_hong')
nams[0] = 'xiao_gang'
#结果
File "<ipython-input-2-3529261ea7e5>", line 1
names = ('xiao_ming','xiao_hong')
^
SyntaxError: invalid character in identifier
显然,程序出错了,元组的值不可一被修改
但是我们可以重新对names赋值一个新的元组
元组的其他方法与列表基本相同,在此不再赘述
参考文献
LOGOGroup https://mp.weixin.qq.com/s/deWdmugnAGtnYmoJiDMTNg
https://www.liaoxuefeng.com/wiki/1016959663602400