基础知识:
在Python中列表的索引可以是正序和倒序,正序第一个元素下标为0,倒序第一个元素下标为-1:
基础知识代码:
# 列表 可以存储所有类型变量
# 列表的创建 语法 变量名=[变量1,变量2,......]
list = ['a','b','c','d',1,2,3,4] #自定义列表
print(list)
list1 =[] #定义空列表
print(list1)
# 列表取值(索引)
list2 =['张三','李四','赵六','王五','赵六','钱七','孙八']
print(list2)
# 取值方法 :变量 = 列表变量[索引值]
zhaoliu=list2[3]
print(zhaoliu)
# 列表裁剪: 列表变量=原列表变量[起始索引:结束索引]
list3 =list[ 1 : 4 ]
print(list3)
print(list[-1]) # 倒序索引
# 在python中列表的取值范围是"左闭右开"
# 列表的index函数用于获得指定元素的索引值
zhaoliu_index = list2.index('赵六') # 注意,index只会返回第一次出现元素的索引
print('赵六的出现位置在:',zhaoliu_index)
# 列表遍历 1 for
# 例1:for 迭代变量 in 可迭代对象i+=1
for p in list2:
print('p是:',p)
# 例2:正序,倒序索引值
count=len(list2) # 获取列表长度
print("列表长度为:",count)
i=0
for p in list2:
if p == '赵六':
ri = count * -1 + i
print( '元素:',p,'正序位置为:',i,'倒序位置为:',ri)
i += 1
# 列表遍历 2 while
i = 0
while i < len(list2):
p = list2[i]
if p == '赵六':
ri = count * -1 + i
print('元素:', p, '正序位置为:', i, '倒序位置为:', ri)
i += 1
# 列表的反转和排序
persons = ['a','b','c','d',1,2,3,4]
persons.reverse() # reverse()方法进行列表的反转
print("反转后的列表为:",persons)
number=[3,2,4,6,1,2,3,7,4]
number.sort() # sort()方法进行列表的升序排列
print("升序排列列表为:",number)
number.sort(reverse=True) # sort()方法进行列表的降序序排列
print("降序排列整理后的列表为:",number)
# 列表的新增,修改,删除操作
"""
list.append(新元素) :在列表末端追加新元素
list.insert(索引,新元素) :在制定索引插入新元素
list[索引]=新值 :更新制定索引位置数据
list[起始索引:结束索引]=新列表 :更新指定范围数据
list.remove(元素) :删除制定元素
list.pop(索引) :按索引删除制定元素
"""
persons2=['张三','李四','赵六','王五','赵六','钱七','孙八']
# 列表的追加
persons2.append("杨九")
print(persons2)
persons2.insert(2,'刘二')
print(persons2)
persons2.insert(len(persons2),'猴十')
print(persons2)
# 列表的更新
persons2[2]='宋二'
print(persons2)
persons2[3:5]=['王五','李四'] # 范围更新:虽然是3~5有3个数,但是python是左闭右开设计,所以5的索引值并不包含字在内
print(persons2)
# 列表的删除
persons2.remove('宋二') # 按元素名称删除 (移除)
print(persons2)
persons2.pop(4) # 按索引值删除 (弹出)
print(persons2)
persons2[4:7]=[] # 群删除
print(persons2)
# 其他用法
persons3=['张三','李四','赵六','王五','赵六','钱七','孙八']
# 统计出现次数
count=persons3.count('赵六')
print(count)
# 追加操作!!!
# append将一个对象追加到末尾,extend则是将列表中的元素追加到原始列表末尾
persons3.append(['杨九','吴十']) # 添加对象:将整个列表对象追加到末尾(list允许增加任何类型的对象!)
print(persons3)
persons3.extend(['杨九','吴十']) # 追加元素:将列表中的元素追加到末尾
print(persons3)
# in 成员运算符,用于判断数据是否在列表中存在,返回boolean
b = '张三' in persons3
print(b)
# 列表的复制
persons4=persons3.copy() # 不是同一个对象
persons5=persons3 # 指向同一对象
print("复制后的列表4为:",persons4)
# is 身份运算符,判断两个变量是否指向同一个内存
print(persons4 is persons3)
print(persons5 is persons3)
# clear 用于清空列表
persons4.clear()
print(persons4)
运行结果:
列表的应用小程序:(嵌套列表
# 多维列表(嵌套列表)
# [[姓名,年龄,工资],[姓名,年龄,工资],[姓名,年龄,工资],[姓名,年龄,工资]]
# 字符串:"姓名,年龄,工资"例如: "张三,30,2000"
# str = "张三,30,2000"
# l = str.split(",")
# print(l)
emp_list = []
while True:
info = input("请输入员工信息:")
if info == "":
print("程序结束")
break
info_list = info.split(",")
if len(info_list) != 3:
print("输入格式不正确,请重新输入")
continue
emp_list.append(info_list)
# print(emp_list)
for emp in emp_list:
print("{n},年龄:{a},工资:{s}".format(n=emp[0],a=emp[1],s=emp[2]))
运行结果:
课程知识点:
版权声明:本文为Zzwtyds原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。