字典

格式  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)

python--字典基本操作的更多相关文章

  1. python字典基本操作

    字典是python中五中基本数据类型之一,虽然它的赋值稍微麻烦点,但用起来真的是很方便.它用键值对来存放数据,所谓键值对,就是一个键,对应一个值,如果后面对前面的键再次赋值,第一次的值就被覆盖掉.像是 ...

  2. Python 字典(Dictionary) 基本操作

    Python字典是一种可变容器模型,可存储任意类型对象:如字符串.数字.元组等.它以键值对(key-value)的形式存在,因此相当于Hashmap在python中的实现. §1. 创建字典  字典由 ...

  3. Python字典和集合

    Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...

  4. python 字典排序 关于sort()、reversed()、sorted()

    一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...

  5. python字典中的元素类型

    python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...

  6. python字典copy()方法

    python 字典的copy()方法表面看就是深copy啊,明显独立 d = {'a':1, 'b':2} c = d.copy() print('d=%s c=%s' % (d, c)) Code1 ...

  7. python 字典实现类似c的switch case

    #python 字典实现类似c的switch def print_hi(): print('hi') def print_hello(): print('hello') def print_goodb ...

  8. python字典的常用操作方法

    Python字典是另一种可变容器模型(无序),且可存储任意类型对象,如字符串.数字.元组等其他容器模型.本文章主要介绍Python中字典(Dict)的详解操作方法,包含创建.访问.删除.其它操作等,需 ...

  9. Python 字典(Dictionary)操作详解

    Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...

  10. Python 字典(Dictionary) get()方法

    描述 Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值. 语法 get()方法语法: dict.get(key, default=None) 参数 ...

随机推荐

  1. Java IO 流-- 文件拷贝

    IO流操作套路: 1.创建源: 2.选择流: 3.操作: 4.释放资源 上代码: package com.xzlf.io; import java.io.File; import java.io.Fi ...

  2. PG TO Oracle 增量同步-外部表

    背景 最近在负责公司数据Oracle转PG:老平台数据库:Oracle11g:新平台数据库:PostgreSQL12.由于平台统计规则有变动:所以正在推广的游戏数据无法全部迁移过来:只能在老平台上运行 ...

  3. 二维vector的使用

    和数组一样,数组有二维的数组,vector也有二维的vector.下面就介绍一下二维vector的使用方法. 一般声明初始化二维vector有三种方法 (1) vector< vector< ...

  4. 高级数据结构---赫(哈)夫曼树及java代码实现

    我们经常会用到文件压缩,压缩之后文件会变小,便于传输,使用的时候又将其解压出来.为什么压缩之后会变小,而且压缩和解压也不会出错.赫夫曼编码和赫夫曼树了解一下. 赫夫曼树: 它是一种的叶子结点带有权重的 ...

  5. nav破解

    https://blog.csdn.net/qq_40529395/article/details/78839357

  6. OpenCV学习(2)——一个简单的例子

    光说不练假把式,来看一个简单的例子,了解了解OpenCV.这个小demo没有几行代码,作用是显示项目目录下面的一张图片. #include <opencv2\opencv.hpp> #in ...

  7. Linux网络服务第七章DNS域名解析服务

    端口:53 一.DNS服务器 正向解析:根据域名查IP地址,即将指定的域名解析为相对应的IP地址.域名的正向解析是DNS服务器最基本的功能,也是最常用的功能. 反向解析:根据IP地址查域名,即将指定的 ...

  8. QML-AES加解密小工具

    Intro 为了解码网课视频做的小工具,QML初学者可以参考一下. 项目地址 Todo 在插入新条目时,ListView不会自动根据section进行重排,因此出现同一个文件夹重复多次的现象.目测强行 ...

  9. 标准库shutil

    shutil模块是高级的 文件.文件夹.压缩包 处理模块. 下面是关于其中各种方法的使用介绍: 1.shutil.copyfileobj(fsrc, fdst[, length])将文件内容拷贝到另一 ...

  10. ubuntu 14.04安装pycharm 社区版

    https://blog.csdn.net/u013733432/article/details/54425831 转载于:https://www.cnblogs.com/liu-shiliu/p/1 ...