字典

格式  key  :value

# string list dict
#  1、取数据方便
# 2、速度快,

定义一个空字典:

d = dict()

或者 d = { }

infos  =  {'name':'张流量','sex':'','addr':'火星','age':180}
#
print(infos.get('phone'))#取不到这个key的话,就是None
print(infos.get('phone',110))#如果取不到这个key的话,默认就是110
print(infos['phone'])#如果key不存在会报错

#
infos['phone']=13611087045 #增加一个key
infos.setdefault('小金库','2000w')
infos.setdefault('name','鹏妹妹') #如果key存在的话,不会修改原来key里面的值
infos['name']='鹏妹妹1' #如果key存在的话,会修改原来key对应的value
print(infos)
# #字典是无序的

# #修改
infos['name']='鹏妹妹'
print(infos)

# 删除
infos.pop('name') #指定key来删除
print(infos)
infos.popitem() #随机删除一个key
print(infos)
del infos['phone'] #指定key来删除
print(infos)
infos.clear()  #清空字典
print(infos)

# #方法
print(infos.values())#获取到字典所有的value
print(infos.keys()) #获取到字典所有的key
print(infos.items()) # 获取字典所有的k-v

字典练习

people = {
   '田雨':{
      'age':18,
      'money':200000,
      'clothes':'100',
      'hzp':'n',
      'shoes':['nike','addis','lv','chanle']
   },
   '张流量':{
      '金库':'2000w',
      'house':['三环一套','42'],
      'cars':    {
            'japan':['普拉多','兰德酷路泽'],
            'usa':['林肯','凯迪拉克','福特'],
            'china':['五菱宏光','qq','红旗']
         }
   }
}
people['张流量']['cars']['usa'].append('牧马人')

people['田雨']['shoes'].append('匡威')
print(people)
people['田雨']['money'] = people['田雨']['money']+200
people['田雨']['money'] += 200
print(people)
# #直接循环一个字典的话,那么循环的是字典的key
for p in people:
   print(p)
for k,v in people.items():  #循环的时候,同时取keyvalue
   print(k,'======',v)

练习2

users = {
   'niuhanyang':'123456',
   'yangyafu':'456789',
}
#所有的账号和密码
# username
# pwd
# cpwd
# print( '123456' in users )   #字典里面用in来判断的话,只是判断key是否存在
for i in range(3):
   username = input('账号:').strip()
   passwd = input('密码:').strip()
   cpasswd = input('密码确定:').strip()
   if username=='' or passwd=='' or cpasswd=='':
      print('用户名/密码不能为空')
   elif username in users:
      print('用户名已经被注册!')
   elif passwd!=cpasswd:
      print('两次输入的密码不一致')
   else:
      print('恭喜,注册成功!')
      # users.setdefault(username,passwd)
      users[username]=passwd
      break
else:
   print('错误次数过多')
print(users)

最新文章

  1. Linux系统之用户、群组和权限
  2. Ubuntu安装sciki-learn及环境
  3. 高手看了,感觉惨不忍睹——关于“【ACM】杭电ACM题一直WA求高手看看代码”
  4. oracle中的自动增长
  5. windows+nginx+fcgi配置
  6. 802.11 wireless 六
  7. ckrule规则编辑器在wpf中的使用
  8. linux字符图形界面
  9. 整理的Java资源
  10. Oracle 优化——位图、函数等索引介绍
  11. Sql时间函数
  12. Struts2+Spring+Hibernate 三大框架的合并集成
  13. 隐式意图-activity
  14. RGB转为Lab空间
  15. wifi驱动总结(1)
  16. AngularJS入门第一课
  17. 【转】NO.3、python+appium+ios,遍历真机元素,得到webview
  18. ActivityLifecycleCallbacks 的简单使用
  19. 网络操作基础(one)
  20. multi函数

热门文章

  1. pytorch 孪生神经网络DNN
  2. 蒲公英 · JELLY技术周刊 Vol.03
  3. 22.Java面试学习平台-整合OSS对象存储
  4. python学习10字典
  5. MySQL不同存储引擎下optimize的用法
  6. Java多线程并发系列之闭锁(Latch)和栅栏(CyclicBarrier)
  7. 吞吐量(TPS)、QPS、并发数、响应时间(RT)
  8. AbstractQueuedSynchronizer与ReentrantLock
  9. (转)logback配置详解
  10. Salesforce吹嘘无代码开发,不用费脑子的人工智能