python3字典列表的增删改查(名片管理系统函数版)

1、列表的增删改查

  增加:有三种添加方式(append、insert、extend)

#append:把添加的内容直接添加到列表的末尾
a=[1,2,3]
a.append('abc')
print(a)
#结果:[1, 2, 3, 'abc']

#insert:可以根据下标来选择添加的位置
b=['a','c',]
b.insert(1,'b')
print(b)
#结果:['a', 'b', 'c']

#extend:可以把两个列表合在一起
a.extend(b)
print(a)
#结果:[1, 2, 3, 'abc', 'a', 'b', 'c']

 

 

  修改:

    names[下标]=new值

a=[1,'b',3]
a[1]=2
print(a)
#结果:[1, 2, 3]

 

  删除:  

a=['a','b',1,2,3,'sad','vd','ig']
a.pop()#删除列表中最后一个
print(a)
#结果:['a', 'b', 1, 2, 3, 'sad', 'vd']
a.remove('sad')#根据列表中元素名字去删除
print(a)
#结果:['a', 'b', 1, 2, 3, 'vd']
del a[0:3]#切片删除(根据下标去删除)
print(a)
#结果:[2, 3, 'vd']

 

 

  查找:in 和 not in

 

#列表的查找用in 和 not in
a=[1,2,3]
if 1 in a:
    print('找到了.....')
else:
    print('没找到.....')

 

 

  获取列表中某个元素的下标

 

#获取列表中某个元素的下标 index
a=[1,2,3]
b=a.index(2)
print(b)
结果:b=1

 

 

2、字典的增删改查

  添加:

  xxx[新的key]=value

  删除:

  del xxx[key值]

  修改:

  xxx[已经存在的key]=new value

  查找:

  xxx.get(key)   查找字典中某个key的value值

 

a={'a':11,'b':12}
#添加
a['c']=13
print(a)
#打印结果:{'a': 11, 'b': 12, 'c': 13}

#删除
del a['b']
print(a)
#打印结果:{'a': 11, 'c': 13}

#修改
a['a']=22
print(a)
#打印结果:{'a': 22, 'c': 13}

#查找字典中某个Key的value值
c=a.get('a')
print(c)
#打印结果:22

 

 

  字典的常见遍历

 

info={'name':'laowang','age':18,'addr':'shenzhen'}
#获取字典中所有的键
a=info.keys()
print(a)
#打印结果:(['name', 'age', 'addr'])

#获取字典中所有的值
a=info.values()
print(a)
#打印结果:(['laowang', 18, 'shenzhen'])

#获取所有的键值对
a=info.items()
print(a)
#打印结果:([('name', 'laowang'), ('age', 18), ('addr', 'shenzhen')])

 

 

3、名片管理系统

 

def menu():#显示功能菜单
    print('---名片管理系统---')
    print('1、添加一个名片')
    print('2、删除一个名片')
    print('3、修改一个名片')
    print('4、查找一个名片')
    print('5、打印所有名片信息')
    print('6、退出系统')
card_info=[]
def add_new_info():#添加一个新的名片
    new_name=input('请输入姓名')
    new_weixin=input('请输入微信')
    new_company=input('请输入公司')
    new_info={}
    new_info['name']=new_name
    new_info['weixin']=new_weixin
    new_info['company']=new_company
    card_info.append(new_info)
    print(new_info)
def del_info():#删除一个名片
    del_name=input('请输入姓名')
    flag=0
    for temp in card_info:
        if temp['name']==del_name:
            flag=1
            card_info.remove(temp)
            break
    if flag==0:
        print('没有要删除的名片!')
    else:
        print('已删除')
def re_info():#修改一个名片
    re_name=input('请输入姓名')
    flag=0
    for temp in card_info:
        if temp['name']==re_name:
            flag=1
            new_name=input('请输入新的名字')
            new_weixin=input('请输入新的微信')
            new_company=input('请输入新的公司')
            temp['name']=new_name
            temp['weixin']=new_weixin
            temp['company']=new_company
            break
    if flag==0:
        print('没有要修改的名片!')
    else:
        print('修改成功!%s'%(temp))
def find_info():#查找一个名片
    find_name=input('请输入姓名')
    flag=0
    for temp in card_info:
        if temp['name']==find_name:
            flag=1
            break
    if flag==0:
        print('找不到该名片!')
    else:
        print('找到了%s'%(temp))
def print_info():#显示所有名片信息
    print(card_info)
def run_system():#执行
    while True:
        num=input('请输入操作序列号')
        if num=='1':
            add_new_info()
        elif num=='2':
            del_info()
        elif num=='3':
            re_info()
        elif num=='4':
            find_info()
        elif num=='5':
            print_info()
        elif num=='6':
            break
        else:
            print('你的输入有误!')
menu()
run_system()

 

 

2018-11-18         

 

posted @ 2018-11-18 22:54  い昔阳ゾ  阅读(1059)  评论(0编辑  收藏  举报