python--序列之列表
最近得闲,抽空练习一下python的基础知识:序列--列表:
列表的基本定义:
在python中如果要创建列表,直接采用赋值形式即可,所有的数据要求使用“[]”进行定义。在进行数据获取时采用索引的形式完成,每一个列表对象索引范围为:“0~(列表长度-1)”
#序列 ---列表练习
infos = ["张三","李四","www.baidu.com","王五"]
print(len(infos)) #获取列表数据长度
print(infos[2],end="、") #获取索引列表为2的列表数据,正向索引是由左端0位置开始获取
print(infos[-1],end="、") #获取索引列表为-1的列表数据,反向索引是有右端-1开始获取
for item in infos[1]: #infos[1]for 循环打印输出1位置的数据
print(item,end="、")
#列表中可以保存多种数据类型包含(字符串,数字,布尔)
msgs = ["lin_test",1000,complex(100,20),123.6,True] #该列表有多种数据类型
print(msgs)
if type(msgs[0]) == float: #for循环列表
print("索引3位置的数据是浮点型。 ") #输出迭代
else:
print("索引0位置的数据不是浮点型。 ")
#通过for循环使用索引输出
infos = ["张三","李四","www.baidu.com","王五"] #定义一个列表
for index in range(len(infos)): #for循环列表,使用len()函数获取列表长度
print(infos[index],end="、") #输出列表项
#修改指定索引数据
infos = ["张三","李四","www.baidu.com","王五"] #定义一个列表
infos[0]="中国苏州" #修改索引0位置的数据为中国苏州
for a in infos:
print(a,end="、")
#使用“+”连接多个序列
infos_1 = ["张三","李四"] + ["www.baidu.com","王五"] #定义一个列表
print("输出连接后的字符 %s" % infos_1)
#数据分片
#列表对象【开始索引:结束索引:步长】 步长可以理解为间隔获取数据
infos_2 = ["张三","李四","www.baidu.com","王五",123.2,"ABC",1000,"suoyin"]
slice_a = infos_2[3:7] #截取3--7的数据信息
print(slice_a) #输出分片结果是“['王五', 123.2, 'ABC', 1000]”
slice_b = infos_2[-7:-4]#获取-7的数据,往右再获取-4的数据,取-7---4之间的数据
print(slice_b) #输出结果为['李四', 'www.baidu.com', '王五']
#通过捷径实现列表分片
infos_3 = ["张三","李四","www.baidu.com","王五",123.2,"ABC",1000,"suoyin"]
Test_1 = infos_3[3:]
print("截取3及以后的全部数据:%s" % Test_1)#输出结果:截取3及以后的全部数据:['王五', 123.2, 'ABC', 1000, 'suoyin']
Test_2 = infos_3[-6:]
print("截取-6及以后的全部数据:%s" % Test_2)#输出结果:['www.baidu.com', '王五', 123.2, 'ABC', 1000, 'suoyin']
Test_3 = infos_3[:-7]
print("从开始截取到-7以后的全部数据:%s" % Test_3)#等价于【0:-7】取-8的位置数据输出结果['张三']
#设置截取步长
infos = ["张三","李四","www.baidu.com","王五",123.2,"ABC",1000,"suoyin"]
slice_a = infos[0:8:2]
print("打印范围为0-8,步长为2的数据:%s" % slice_a)#输出结果['张三', 'www.baidu.com', 123.2, 1000]
slice_b = infos[0:8:2]=["X","Y","Z","W"]#['张三', 'www.baidu.com', 123.2, 1000]替换为["X","Y","Z","W"]
print("输出替换后的数据为:%s" % infos)
学而不思则罔,思而不学则殆