python 字典

9 篇文章 0 订阅
#字典 也就是所谓的JSON数据 存储一系列键值对的东西
#与键关联的值可以是数字、字符串、列表、以及字典、任何对象都可以作为字典中的值
alien_0 = {'color':'red','points':5}
# print(alien_0['color'])
# print(alien_0['points'])
# new_points = alien_0['points']
print("You just earned\t"+str(alien_0['points'])+"\tpoints!")

#添加键-值对
#字典是一种动态的结构,可以随时在其中添加键-值对
alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)
#注 使用字典存储用户提供的数据或可能会自动生成大量的键-值对代码时通常
会需要会定义一个空字典

#通过字典的键更改值
alien_0['x_position'] = 10
print(alien_0)
#修改
#medium:中等的 slow:缓慢的 speed:速度
alien_1 = {'x_position':0,'y_position':25,'speed':'medium'}

#向右移动外星人
#根据外外星人当前速度决定其移动多远
if alien_1['speed'] == 'slow':
#increment增量
    x_increment=1
elif alien_1['speed'] == 'medium':
    x_increment=2
else:
    x_increment=3
#新的X位置等于老位置加上X的增量位置
alien_1['x_position']=alien_1['x_position']+x_increment
print("New x-position: "+ str(alien_1['x_position']))

#删除键-值对
#字典中不再需要的信息使用del语句进行键-值对彻底删除
del alien_0['color']
print(alien_0)
#遍历字典
#1.遍历所有的键-值对
user_0={
    'username':'efermi',
    'first':'enrico',
    'last':'fermi'
}

for key,value in user_0.items():
    print("\nkey: "+key);print("value: "+value);
#遍历字典的for循环需要声明两个变量,用于存储键-值对中的键和值
#可以使用任何名称
#语法: for k,v in user_0.items()
#第二部分包含字典名和方法items() items返回一个键-值对的列表
#for循环以此将每个键-值对存储到制定的两个变量中


#遍历字典中的所有键
#字典名的keys()方法获取所有的键并返回列表

favorite_languages = {
    'jen':'python',
    'sarah':'c',
    'edward':'ruby',
    'phil':'python'
}

print("-----------------------------------------")

for name in favorite_languages.keys():
    print(name.title())


#keys()可以省略 也就是说当 for 只定义了一个参数的时候 默认循环的是KEY


#按顺序遍历字典中所有的键

print("-----------------------------------------")

for name in sorted(favorite_languages.keys()):
    print(name.title())
#遍历所有值
for language in favorite_languages.values():
    print("values: "+language.title());
#使用set集合剔除重复项
for language in set(favorite_languages.values()):
    print("values: "+language.title());
#嵌套
alien_0 = {'color':'green','points':5}
alien_1 = {'color':'yellow','points':10}
alien_2 = {'color':'red','points':15}
aliens = [alien_0,alien_1,alien_2]
print(aliens)
for alien in aliens:
    print(alien)

#创建一个空数组    
aliens = []
#创建30个绿色的外星人 range()函数用于返回一个数组
for alien_number in range(30):
    new_alien = {'color':'green','points':5,'speed':'slow'}
    aliens.append(new_alien)


#显示前五个外星人
for alien in aliens[:5]:
    print(alien)

#显示创建了多个外星人
print("total: "+str(len(aliens)))
#字典嵌套字典
users = {
    'eb':{
        'sex':'男',
        'age':18
    },
    'ec':{
        'sex':'女',
        'age':21
    }
}
for user,v in users.items():
    print(user+v['sex']+str(v['age']))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值