python学习日志4

列表 元组 字典

列表

查:list.index()返回查找到的坐标找不到报错, in、not in 查找是否存在;

改:list1[1]=po;

函数:

列表中最大值,最小值max(),min();


reverse() 反向列表中元素

len()列表元素个数


eval():将列表 元组,字典类型的字符串转为 列表 元组 字典可以把list tuple dict和string相互转换

元组:元组与列表类似,但是元组的元素不能编辑;元组中只包括一个元素时,需要在元素后加逗号,否则括号会被当作运算符使用

nb=(1,2,2,3,6)

没有 增,删,改的功能。只有查。可以通过下标获得元素 tuple[i]

print(nb[2]);    run=2

字典:用花括号括起来,内部是键值对形式,不允许重复值,可以加重复值,但无意义也不报错。


函数:


作业

列表:

print("=======通讯录管理系统=======")
print("1.增加姓名和手机")
print("2.删除姓名")
print("3.修改手机")
print("4.查询所有用户")
print("5.根据姓名查找手机号")
print("6.退出")
print("============================")
name_list=[]
phone_list=[]
while True:
    input_val=int(input('请输入操作项:'))
    if input_val in range(1,7):
        if input_val==1:
            name_list.append(input('请输入姓名:'))
            phone_list.append(input('请输入电话:'))
            print('姓名和电话:',name_list,phone_list)
            sign=input('是否继续:y/n')
            if sign=='n':
                break
            else:
                continue
        elif input_val==2:
            print(name_list)
            sign=input('是否删除姓名:y/n')
            if sign=='y':
                del name_list[:]
                print('已删除!')
                sign=input("是否退出y/n")
                if sign=='y':
                    break
                else:
                    continue
            else:
                print('未进行删除!')
        elif input_val==3:
            phone=(input('请输入需要修改的手机:'))
            if phone not in phone_list:
                print('请重新输入电话!')
            else:
                phone_list[(phone_list).index(phone)]=(input('请输入修改后的手机:'))
                print('已成功修改手机!')
            sign = input("是否退出y / n")
            if sign == 'y':
                break
            else:
                continue
        elif input_val==4:
            print('所有用户:',name_list[:])
        elif input_val==5:
            names_reac=input('请输入姓名:')
            if names_reac in name_list[:]:
                print(names_reac,'的手机为',phone_list[name_list.index(names_reac)])
                sign=input('是否继续y/n')
                if sign=='n':
                    break
                else:
                    continue
            else:
                print('未查询到该人!')
        else:
            break
    else:
        print("输入有误!")
print("谢谢使用!")
字典:
 
 
  1. dic = {"中国移动":10086,"中国电信":10000}  
  2. def sys(x):  
  3.     if x=="1":  
  4.         set(inp_name(),inp_phone())  
  5.     elif x=="2":  
  6.         delete(inp_name())  
  7.     elif x=="3":  
  8.         find(inp_name())  
  9.     elif x=="4":  
  10.         allUser()  
  11.     else:  
  12.         print("\tError!输入有误,请重新输入!")  
  13. def inp_name():  
  14.     name = input("请输入姓名:")  
  15.     return name  
  16. def inp_phone():  
  17.     phone = input("请输入手机:")  
  18.     return phone  
  19.   
  20. def set(name,phone):  
  21.     dic[name] = phone  
  22.     print("\t已成功修改!")  
  23.     return dic  
  24. def delete(name):  
  25.     try:  
  26.         del dic[name]  
  27.     except KeyError as e:  
  28.         print("\tError 查无此联系人!")  
  29.     else:  
  30.         print("\t已成功删除!")  
  31.         return dic  
  32. def allUser():  
  33.     print(dic)  
  34. def find(name):  
  35.     try:  
  36.         print(dic[name])  
  37.     except KeyError as e:  
  38.         print("\tError 查无此联系人!")  
  39. def exit():  
  40.     pass  
  41. while True:  
  42.     print('''''>============通讯录系统===============< 
  43.     请输入: 
  44.     增加/修改手机号···· 输入:1 
  45.     删除联系人·······输入:2 
  46.     查找联系人·······输入:3 
  47.     查看通讯录·······输入:4 
  48.     退出通讯录·······输入:5 
  49. >====================================<''')  
  50.     x = input(">")  
  51.     if x=="5":  
  52.         print("成功退出!")  
  53.         break  
  54.     sys(x)  




























评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值