day16 python-04 字典
Python之路,Day3 = Python基础4
# is 比较id # == 比较数值 # type(1) is type(2) 比较两个变量的类型是否相同
a = 1
b = 1
c = ''
print(type(a), type(b), type(a) is type(b)) # <class 'int'> <class 'int'> True
print(type(a), type(c), type(a) is type(c)) # <class 'int'> <class 'str'> False # 字典:
# 赋值方式
# dict(x=1,y=2,z=3)
# dict([('x',1), ('y',2), ('z',3)]) d1 = {'x':1, 'y':2, 'z': 3}
d2 = dict(x=1,y=2,z=3)
d3 = dict([('x',1), ('y',2), ('z',3)])
print(d1) # {'y': 2, 'x': 1, 'z': 3}
print(d2) # {'y': 2, 'x': 1, 'z': 3}
print(d3) # {'y': 2, 'x': 1, 'z': 3} # {}.fromkeys(['name', 'age'],None) None的位置,视为一个整体,分别给每一个
d4 = {}.fromkeys(['name', 'age','sex'],None) # {'age': None, 'sex': None, 'name': None}
print(d4) # d.clear() :清空字典中的元素
d1.clear()
print(d1) # {} # d.get() :找元素,找不到返回None,可以d.get('y','找不到。。。')
print(d2.get('x')) #
print(d2.get('a')) # None # d.items()
print(d2.items()) # dict_items([('x', 1), ('z', 3), ('y', 2)]) >>>可迭代 # d.keys()
print(d2.keys()) # dict_keys(['z', 'x', 'y']) >>>可迭代 # d.values()
print(d2.values()) # dict_values([3, 1, 2]) >>>可迭代 # d.popitems() # 这个是随机删除一组(key:value)元素
print(d2.items()) # dict_items([('z', 3), ('y', 2), ('x', 1)]) >>>可迭代 # d.pop() :d.pop('z','没有这个元素'),后面加默认值,则不报错
print(d2.pop('x')) # # d.setdefult() :没有就添加,有就不添加,返回存在的value
d2.setdefault('x',50)
print(d2) # {'y': 2, 'x': 50, 'z': 3} # d.update(d1)
print(d3,d4) # {'y': 2, 'z': 3, 'x': 1} {'name': None, 'sex': None, 'age': None}
d3.update(d4)
print(d3) # {'y': 2, 'z': 3, 'x': 1, 'name': None, 'sex': None, 'age': None} # in 逻辑判断,查看元素是否在字符串、列表、字典的key中等。。
#
# 自带布尔值
# 所有数据自带布尔值,有当数据为0、None、空的时候为False
#
#
# 集合 -- 关系运算 & 去重
# 元素必须是唯一的。
# s = set() :定义
# 元素为可哈希的
# 元素为无序的
# 循环:
# for i in s:
# print(i)
# 交集:
# s1 & s2
# s1.intersection(s2)
# 并集:
# s1 | s2
# s1.union(s2)
# 差集:
# s1 - s2
# s1.difference(s2)
# s1.difference_update(s2) # 寻找后,进行修改
# 对称差集
# s1 ^ s2
# s1.smmetric_difference(s2)
# s1.update(s2)
# s1.add('1') :添加
# s1.discard('1') :删除--不报错
# s1.remove('1') :删除--会报错
# s1.pop() :随机删除
# s1.issubset(s2) :判断子集
# s1.issuperset(s2) :判断为父集
# s1.disjoint(s2) :两个集合没有交集,返回True
day16 python-04 字典的更多相关文章
- Python中字典和集合
Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...
- Python的字典
1. Python的字典 1.1. 字典的定义 在Python中,字典是一种key-value的数据类型,也是唯一的映射类型:字典还是另一种可变容器类型,且可存储任意类型对象,其中也可包括其他容器 ...
- Python的字典和JSON
Python的字典和JSON在表现形式上非常相似 #这是Python中的一个字典 dic = { 'str': 'this is a string', 'list': [1, 2, 'a', 'b'] ...
- python基础--字典
Python基础--字典 字典的常用函数: dict.clear( )--->无任何返回值 说明: 清除字典内的所有的元素 语法: In [5]: dict.clear? Type: metho ...
- Python dictionary 字典 常用法
Python dictionary 字典 常用法 d = {} d.has_key(key_in) # if has the key of key_in d.keys() ...
- python有序字典OrderedDict()
转python创建有序字典OrderedDict # -*- coding:utf-8 -*- """ python有序字典 需导入模块collections " ...
- python:字典嵌套列表
Python的字典{ }以键值对的形式保存数据,可以以键来访问字典中保存的值而不能用下标访问.字典中几乎可以包含任意的变量,字典,数列,元组.数列也一样. python的列表[ ]与字典不同,列表通过 ...
- Python的字典类型
Python的字典类型为dict,用{}来表示,字典存放键值对数据,每个键值对用:号分隔,每个键值对之间用,号分隔,其基本格式如下: d = {key1 : value1, key2 : value2 ...
- python基础—字典
阅读文本需要3分钟,不建议跳读 节目清单 字典是python中最重要的数据类型,字典由“键-值”对组成的集合,字典中的“值”通过“键”来引用.这里将介绍字典的定义.访问.排序等功能. 字典的创建 字典 ...
- 深入Python(1): 字典排序 关于sort()、reversed()、sorted()
http://www.cnblogs.com/BeginMan/p/3193081.html 一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠 ...
随机推荐
- 内网渗透_win_socks代理_reGeorg+proxifier
遇到内网windows机器,如果想远程登陆,通常得通过代理,常用的nc.lcx 工具可满足要求. 如 lcx 示例: 两台机器上均上传lcx.exe 在 xp机器(公网)上执行 lcx.exe -li ...
- 21-6-数组相关api
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 淘宝内核月报2014-11-draft
内核月报2014-11-draft MySQL· 捉虫动态·OPTIMIZE 不存在的表 bug 描述 这是一个和 GTID 相关的Bug,也就是说5.6才会有,并且出现这个 bug 需要满足条件: ...
- 笔记56 Mybatis快速入门(七)
相关概念介绍(二) 6.一级缓存 <1>在一个session里查询相同id的数据 package mybatis.annotation; import java.io.IOExceptio ...
- CSIC_716_20191205【TCP-解决粘包问题、UDP模板】
---------------------------------------------------------------------------------------------------- ...
- Linux批量解压缩脚本
#!/bin/bash # 批量解压缩脚本 # 作者: shaohsiung # 时间: // # Store all file names in the tmp directory with the ...
- No parser no filepath given问题解决
关于 vue 项目 run dev 的时候,控制台警告: No parser and no filepath given, using 'babylon' the parser now but thi ...
- Q:微信小程序一次性订阅消息(前台收集)
说明:官方文档(https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/subscribe-message.ht ...
- JAVA C 数据类型对应
{ Java—C和操作系统数据类型的对应表 Java Type C Type Native Representation boolean int 32-bit integer (customizabl ...
- struts2-convention-plugin零配置
零配置的意思并不是说没有配置,而是通过约定大于配置的方式,大量通过约定来调度页面的跳转而使得配置大大减少. <?xml version="1.0" encoding=&quo ...