Python字典基础

Python字典基础

  • 字典不关心顺序,而是关心键与值之间的对应关系
  • 字典的定义
alien = {'color':'green','points':'2'}

alien['x']=90 #列表偏移量的位置更换成键名
alien['y']=50
print(alien)

>> {'color': 'green', 'points': '2', 'x': 90, 'y': 50}
  • 字典中元素修改
alien = {'color':'green','points':'2'}
alien['color']= 'black'
print(alien)

>> {'color': 'black', 'points': '2'}
  • 字典中元素的删除
alien_0 = {'color':'yello','speed':'medium','x' : 0,'y' : 25}
del alien_0['color']
print(alien_0)

>> {'speed': 'medium', 'x': 0, 'y': 25}
  • 字典的遍历
    – 得到键和值
user_0={'username' : 'tim',
        'first' : 'Tim',
        'last'  : 'Duncun'
        }

for k,v in user_0.items(): #这里items()创建一个由键值对组成的列表,通过遍历分别赋值到k,v
    print(k)
    print(v)
    print('\n')

>>username
>>tim

>>first
>>Tim

>>last
>>Duncun

– 得到所有的键

fav = {
       'jen' : 'python',
       'sarah' : 'C',
       'edward' : 'ruby',
       'phil' : 'R'
       }

for name in fav:
    print(name.title())
 
for name in fav.keys(): #两种效果一样,但keys()更容易理解
    print(name.title())
    
>>Jen
>>Sarah
>>Edward
>>Phil
>>Jen
>>Sarah
>>Edward
>>Phil

– 如果想要得到按照字母排序的键,那么只要修改一下

for name in sorted(fav.keys()):

>>Edward
>>Jen
>>Phil
>>Sarah

-获取字典的值
– 根据values()函数

fav = {
       'jen' : 'python',
       'sarah' : 'C',
       'edward' : 'ruby',
       'phil' : 'R',
       'zara' : 'C'
       }

for value in fav.values():
    print(value.title())#首字母大写

>>Python
>>C
>>Ruby
>>R
>>C

—但是用values()会出现值重复的现象,为了简化,引入set()

for value in set(fav.values()):

>>R
>>Python
>>C
>>Ruby

– 根据遍历得到的键来获取值

fav = {
       'jen' : 'python',
       'sarah' : 'C',
       'edward' : 'ruby',
       'phil' : 'R'
       }

for name in fav.keys():
    print(name.title())
    print(fav[name])
    print('\n')

>>Jen
>>python

>>Sarah
>>C

>>Edward
>>ruby

>>Phil
>>R
  • 字典嵌套列表
    –值的位置放置列表
fav={
     'jen' : ['python','ruby'],
     'sarah':['c'],
     'edward':['ruby','go'],
     'phil':['python','haskell']
     }
for name,languages in fav.items():
    print('\n%s likes '%name)
    for language in languages:
        print(lan )

>>jen likes 
>>python
>>ruby

>>sarah likes 
>>c

>>edward likes 
>>ruby
>>go

>>phil likes 
>>python
>>haskell
  • 字典嵌套字典
    – 值的位置放置字典
users ={
        'aein':{
                'first':'albert',
                'last':'eintstein',
                'location':'princeton'
                },
        'mcurie':{
                'first' : 'marie',
                'last' : 'curie',
                'location':'paris'
                }
        } 
for Sname,infos in users.items():
    print('\nUsername : %s ' %Sname)
    print('  Fullname: %s %s'%(infos['first'].title(),infos['last'].title()))
    print('  Location: %s'%infos['location'])
    print('\n')

>>Username : aein 
>>  Fullname: Albert Eintstein
>>  Location: princeton



>>Username : mcurie 
>>  Fullname: Marie Curie
>>  Location: paris

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值