zoukankan      html  css  js  c++  java
  • 字典

    字典操作

    #向字典中添加键-值对
    alien_0 = {'color': 'green', 'points': 5}
    print(alien_0)
    >>>{'color': 'green', 'points': 5}
    alien_0['x_position'] = 0
    alien_0['y_position'] = 25
    print(alien_0)
    >>>{'color': 'green', 'points': 5, 'x_position': 0, 'y_position': 25}
    
    #修改字典中的值
    alien_0 = {'color': 'green', 'points': 5}
    alien_0['color'] = 'yellow'
    print(alien_0)
    >>>{'color': 'yellow', 'points': 5}
    
    
    #对一个能够以不同速度移动的外星人的位置进行跟踪。
    alien_0 = {'x_position': 0, 'y_position': 25, 'speed': 'medium'}
    
    #向右移动外星人
    #根据外星人当前速度决定将其移动多远
    if alien_0['speed'] == 'slow':
        x_increment = 1
    elif alien_0['speed'] == 'medium':
        x_increment = 2
    else:
        x_increment = 3
    
    #新位置等于老位置加上增量
    alien_0['x_position'] = alien_0['x_position'] + x_increment
    print(alien_0)
    >>>{'x_position': 2, 'y_position': 25, 'speed': 'medium'}
    
    #删除键-值对
    alien_0 = {'color': 'green', 'points': 5}
    print(alien_0)
    
    del alien_0['color']    #删除使用del,删除的键—值对永远消失了。
    print(alien_0)
    >>>{'points': 5}
    
    #使用一个字典来存储一个熟人的信息,该字典应包含键first_name 、last_name 、age 和city 。将存储在该字典中
    #的每项信息都打印出来。
    
    user = {'first_name':'jacky','last_name':'zhao','age':30,'city':'shanghai'}
    for i in user:
        print(i + ':' + str(user[i]))
    >>>first_name:jacky
    >>>last_name:zhao
    >>>age:30
    >>>city:shanghai
    
    
    #格式化打印字典键-值
    a = {'ls':'遍历当前文件夹','mkdir':'建立文件夹','rm':'删除文件或文件夹','top':'显示系统进程'}
    for i in a:
        print(i + ':', a[i])
    >>>ls: 遍历当前文件夹
    >>>mkdir: 建立文件夹
    >>>rm: 删除文件或文件夹
    >>>top: 显示系统进程
    line1=""
    line2=""
    for i,v in a.items():
        line1+="	%s"%i
        line2+="	%s"%v
    print (line1,'
    ' ,line2)
    >>>ls	mkdir	rm	top
    >>>遍历当前文件夹	建立文件夹	删除文件或文件夹	显示系统进程
    
    #遍历字典
    user = {
        'username': 'efermi',
        'first': 'enrico',
        'last': 'fermi',
    }
    for key,value in user.items():
        print('Key:' + key)
        print('Valune:' + value + '
    ')
    >>>Key:username
    >>>Valune:efermi
    >>>
    >>>Key:first
    >>>Valune:enrico
    >>>
    >>>Key:last
    >>>Valune:fermi
    
    
    #遍历字典中的元素
    favorite_languages = {
        'jen': 'python',
        'sarah': 'c',
        'edward': 'ruby',
        'phil': 'python',
    }
    for name in favorite_languages.keys():      #打印字典中所用的key
        print(name.title())
    # >>>Jen
    # >>>Sarah
    # >>>Edward
    # >>>Phil
    
    for language in favorite_languages.values():    #打印字典中的所有value
        print(language.title())
    >>>Python
    >>>C
    >>>Ruby
    >>>Python
    
    for language in set(favorite_languages.values()):   #打印字典中所有的value,并用set处理重复值
        print(language.title())
    >>>Python
    >>>C
    >>>Ruby
    
    
    #按顺序遍历字典中的所有键
    user = {
        'kiven':32,
        'seven':20,
        'jacky':18,
        'alex':20,
    }
    for name in user.keys():    #不排序直接遍历输出
        print(name.title())
    >>>Kiven
    >>>Seven
    >>>Jacky
    >>>Alex
    
    for name in sorted(user.keys()):    #遍历key并排序输出
        print(name.title())
    >>>Alex
    >>>Jacky
    >>>Kiven
    >>>Seven
    
    # 创建一个应该会接受调查的人员名单,其中有些人已包含在字典中,而其他人未包含在字典中。
    # 遍历这个人员名单,对于已参与调查的人,打印一条消息表示感谢。对于还未参与调查的人,打印一条消息邀请他参与调查。
    list = ['user1','user2','user3','user4','user5','user6']
    user = {'user1':'yes','user5':'yes'}
    
    for i in list:
        if i in user.keys():
            print("Thank you for %s's cooperation" % i)
        else:
            print('%s ,Please cooperate with the investigation!' % i)
    
    
    #字典列表
    
    alien_0 = {'color': 'green', 'points': 5}
    alien_1 = {'color': 'yellow', 'points': 10}
    alien_2 = {'color': 'red', 'points': 15}
    
    alien = [alien_0,alien_1,alien_2]
    print(alien)
    >>>[{'color': 'green', 'points': 5}, {'color': 'yellow', 'points': 10}, {'color': 'red', 'points': 15}]
    
    #定义一个空列表用来存储信息
    aliens = []
    #创建30个外星人信息
    for alien_number in range(30):
        new_alien = {'color':'green','points':5,'speed':'slow'}
        aliens.append(new_alien)
    #打印前5个外星人信息
    for alien in aliens[:5]:
        print(alien)
    
    
    #修改前3个外星人的信息
    for alien in aliens[0:3]:
        if alien['color'] == 'green':
            alien['color'] = 'yellow'
            alien['speed'] = 'medium'
            alien['points'] = 10
    for j in aliens[0:5]:
        print(j)
    
    
    #在字典中存储列表
    user = {
        'user1':['r','w'],
        'user2':['r'],
        'user3':['r','w','x'],
        'user4':['r']
    }
    for name,permissions in user.items():   #用for循环打印出字典中的key
        print('
    ' + name.title() + "'s permission is:")
        for permission in permissions:      #再用for循环打印出value中的列表中的所有值
            print('	' + permission.title())
    
    
    #在字典中存储字典
    users = {
        'aeinstein': {
            'first': 'albert',
            'last': 'einstein',
            'location': 'princeton',
            },
        'mcurie': {
            'first': 'marie',
            'last': 'curie',
            'location': 'paris',
            }
    }
    for username,user_info in users.items():
        print('
     Username:' + username)
        full_name = user_info['first'] + ' ' + user_info['last']
        location = user_info['location']
    
        print('	 Full_name:' + full_name.title())
        print('	 Location:' + location.title())
    >>> Username:aeinstein
    >>>	 Full_name:Albert Einstein
    >>>	 Location:Princeton
    
    >>> Username:mcurie
    >>>	 Full_name:Marie Curie
    >>>	 Location:Paris
    
    #创建多个字典,对于每个字典,都使用一个宠物的名称来给它命名;在每个字典中,包含宠物的类型及其主人的名字。将这些字典存储在一个名为pets
    #的列表中,再遍历该列表,并将宠物的所有信息都打印出来。
    
    pet1 = {
        '类型':'金毛',
        '主人':'jacky'
    }
    pet2 = {
        '类型':'萨摩耶',
        '主人':'alex'
    }
    pets = [pet1,pet2]
    for pet in pets:
        print('
    '+ pet['主人'] + "'s pet" + '
    ' '类型:'+ pet['类型'] )
    
    
    #创建一个名为favorite_places 的字典。在这个字典中,将三个人的名字用作键;对于其中的每个人,都存储他喜欢的1~3个地方。为让这个练
    #习更有趣些,可让一些朋友指出他们喜欢的几个地方。遍历这个字典,并将其中每个人的名字及其喜欢的地方打印出来。
    
    favorite_places = {'jacky':['云南','西藏'],'alex':['西藏','哈尔滨','香港'],'bob':['广州','香港']}
    for name,placies in favorite_places.items():
        print('
    ' + str(name) + '喜欢的地方是:')
        for place in placies:
            print( place)
    
    
    #创建一个名为cities 的字典,其中将三个城市名用作键;对于每座城市,都创建一个字典,并在其中包含该城市所属的国家、人口约数以及一个有关该
    #城市的事实。在表示每座城市的字典中,应包含country 、population 和fact 等键。将每座城市的名字以及有关它们的信息都打印出来。
    cities = {
        '上海':{
            'country':'中国',
            'population':'2500万',
            'fact':'房价贵'
        },
        '巴黎':{
            'country':'法国',
            'population':'224万',
            'fact':'漂亮'
        }
    }
    for place,info in cities.items():
        print('
    '+ '城市:'+ place)
        print('Country:' + info['country'] + '
    Population:' + info['population'] + '
    Fact:'+ info['fact'])
    

      

  • 相关阅读:
    luoguP1160 队列安排 x
    luoguP3366 【模板】最小生成树 x
    cogs服务点设置(不凶,超乖) x
    codevs3269 混合背包 x
    [kuangbin带你飞]专题一 简单搜索 x
    [SWUST1744] 方格取数问题(最大流,最大独立集)
    [SWUST1738] 最小路径覆盖问题(最大流,最小路径覆盖)
    [SWUST1742] 试题库问题(最大流)
    [HDOJ5676]ztr loves lucky numbers(状压枚举,打表,二分)
    [swustoj1739] 魔术球问题 (最大流,最小路径覆盖)
  • 原文地址:https://www.cnblogs.com/jacky-zhao/p/7880364.html
Copyright © 2011-2022 走看看