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. 颠 ...
随机推荐
- JS设置浏览器缓存,以及常用函数整理
//设置缓存 function set_cache(key,value){ if(key=='') return false; localStorage.setItem(key, value); } ...
- C语言之内存分配函数
#include <stdio.h> #include <stdlib.h> #include <string.h> int main() { /********* ...
- union 或者 union all 与 order by 的联合使用
首先清楚:多个select 语句 union 时不是简单的将查询结果拼接起来 而是将sql拼接起来编译(做为一个sql语句),然后去执行. 注: union 连接的语句中只会出现一个order by ...
- C中为什么不能用==比较字符串?
通常的回答是,==比较的不是字符串的内容,它是在比较指针.或者说,==(或者!=)仅比较两个字符串的首地址,而不会比较字符串每个字符. 那其实接下来应该问的问题是,为什么会只比较首地址呢? 因为早期的 ...
- .net 项目如何添加log4net日志记录
1.在项目根目录新建文件log4net.config,此文件中的节点解释还请自动百度. 文件实例: <?xml version="1.0"?><configura ...
- NX二次开发-创建经典工具栏UF_UI_create_toolbar
NX9+VS2012 1.打开D:\Program Files\Siemens\NX 9.0\UGII\menus\ug_main.men 找到装配和PMI,在中间加上一段 TOGGLE_BUTTON ...
- 20180713NOIP模拟赛
20180713NOIP模拟赛 T1:动物园 zoo.cpp 2s [题目描述] 给定一张图,点有点权,求每个点到其他所有点中所有点的权值最小值之和. [思路] \(50pts\)做法:对于每个点跑一 ...
- Spring-Security (补充)
一.配置静态资源过滤 直接在xml中配置即可 <!-- 配置静态资源过滤 --> <security:http security="none" pattern=& ...
- iOS开发UITouch触摸API简介
1.UITouch简介 当用户触摸屏幕时,会创建一个UITouch对象: UITouch的作用保存着触摸相关的信息,比如触摸的位置.时间.阶段等: 当从开始到结束,系统会更新UITouch对象,结束时 ...
- UVA 240 Variable Radix Huffman Encoding
题目链接:https://vjudge.net/problem/UVA-240 题目大意 哈夫曼编码是一种最优编码方法.根据已知源字母表中字符出现的频率,将源字母表中字符编码为目标字母表中字符,最优的 ...