列表
1 创建列表:数据集合以[]括号框起来,元素由“,”分隔,列表中可以包含任何数据类型。
list=["a",1,2.22,False,[1,2,3],{}]
2 切片:类似于字符串,可以分片和索引操作列表
list1=['小明','xiaohua',20,80,"name","age"]
print(list1[1]) #输出第二位
print(list1[-1]) #最后一位
print(list1[:]) #全部
print(list1[:2]) #前两位:包含前一项,不包含后一项“2’
print(list1[1:5:1])
print(list1[-1:-4:-1])
print(list1[::]) #全部
print(list1[::-1]) #倒序显示
3 常用操作:列表可以通过序列号访问其中成员,可以对列表进行“增”“删”“改”“查”“排序”等操作。
# 增 list.append("")尾部追加 insert(位置下标,“”) list+list2 与或非 extent(list)
list1.append('python')
print(list1)
list1.insert(0,'html') #在下标0处插入,0和后面位置的项后挪一位,
print(list1)
list11=[1,3,5,7,9]
list22=[2,4,6,8,10]
# print(list11+list22)
# # print(list11-list22) #不能相减
# print(str(list11) and str(list22))
# print(list11 or list22)
list11.extend(list22)
print(list11)
# 改 list[i]="修改后字符"
# 删 del list1[2]
# list1.pop():把最后一个删除,也可以指定删除的下标
# list1.remove("")删除括号中的内容,但只删除一次
lista=[1,2,3,4,5,6,7,8,9]
del lista[0] #删除了第一位
print(lista)
del lista #删除了lista列表
listb=[1,2,3,4,5,6,7,8,9]
listb.pop() #删除尾部数据
print(listb)
listb.pop(0) #下标是第一位,删除第一位1
print(listb)
listb.remove(5) #删除内容为5的一项
print(listb)
# 查 list1.index(" 查找的内容"),返回下标 in/not in
list10=[1,2,3,4,5]
print(list10.index(5));
print(1 in list10)
print (8 not in list10)
4.常用函数操作总结
# list函数:len(list) 长度
# /max(list) min()
# /list(seq)元组转化为列表
# /list.append(obj)列表末尾添加新的对象
# /list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值
# /list.index() 索引位置,超出位置抛出异常
# /list.insert(index,obj)
# /list.pop(obj=list[-1])移除列表中的制定位置元素,默认最后一位,并返回参数下标
# /list.remove(obj)移除列表中某个值第一个匹配项
# /list.reverse()反向列表中的元素
# /list.sort([Func])对列表元素进项排序,如果制定参数,值使用指定的比较函数
# /list.clear()清空列表
# /list.copy()
# /eval(list)将元组字典列表类型的字符串转化为元组字典列表,可以把list tuple dict这三个和string相互转化
元组的特性与列表基本相同,元组时“()”包围的数据集合。与列表的区别是元组里的元素不可修改,也就是指只能进行分片和索引操作,不能进行“增”“删”“改”等操作。所以元组的特点是访问速度快,安全性高。
t=(1,2,3,4)
# 赋值
a=(1,2)
c,d=a #一一对应的赋值
print(c,d)
c,d,e=a #赋值超出会报错
f=(2) #赋值一个元组时
print(type(f)) #type为int
# 所以应该f=(2,)这样赋值
常用操作
#len(t)/切片
m=(1,2,3,"asd",False)
n=(9,8,7,"hnd",True)
print(m[:])
print(m[:4])
print(m[::-1])
print(m[:4]*2)
# in not in
作业:
=======通讯录管理系统======= 1.增加姓名和手机 2.删除姓名 3.修改手机 4.查询所有用户 5.根据姓名查找手机号 6.退出 ============================
flag=True
names=[];
phones=[]
while flag:
print("=======通讯录管理系统=======")
print("1.增加姓名和手机")
print("2.删除姓名")
print("3.修改手机")
print("4.查询所有用户")
print("5.根据v姓名查找手机号")
print("6.退出")
print("============================")
inp=int(input("请选择"))
if inp==1:
names.append(input("请输入姓名:"))
phones.append(input("请输入电话:"))
print("输入的姓名和电话是:"+names[-1],phones[-1])
elif inp==6:
print("退出")
flag=False
elif inp==2:
a=input("请输入要删除的姓名")
if a in names:
del names[names.index(a)]
print("已删除")
if a not in names:
print('该姓名不存在')
elif inp==3:
b=input("请输入要修改的手机号")
if b in phones:
phones[phones.index(b)]=input("请输入修改后号码")
else:
print("不存在该电话")
elif inp==4:
c=input("请输入要查询的姓名")
if c in names:
print(c+'存在')
else:
print('此人不存在')
elif inp==5:
d=input("请输入姓名")
if d in names:
i=names.index(d)
print("电话是:"+phones[i])
else:
print('姓名不存在')