Python集合&字典
Python集合&字典
@
字典
字典的几种定义方式
第一种
字典{key1 : value1, key2 : value2, ......}
dict1 = {'one': 1, 'two': 2}
第二种
使用工厂函数,用元组操作。
dict2 = dict(((1,2), (3, 4), (5, 6), (7,8)))
需要用到这么多括号的原因:
- 第一层括号是dict的括号,里面需要一个元素。
- 第二层括号就是为了把四个元组变成一个对象给dict
- 第三层括号是元组的括号
第三种
还是使用工厂函数dict,但是是用"="操作
字典dict(key1 = value1, key2 = value2, ......)
dict3 = dict(one = 1, two = 2, three = 3)
键值key不能随便改格式,解释器会自动将键值转换为字符串存储。
字典的一些基本操作
通过key得到value
value = dict3[key]
value = dict3.get(key)
增加字典键值对
dict3[new_key] = new_value
dict3.update(dict2)
此时Python会自动创建键值对
删除字典键值对
dict3.pop(key)
会返回与之对应的键值
格式化操作
dict4.formkeys((1, 2, 3),'num')
新建一个字典dict4然后所有的key都对应'num'
清空字典
辨析dict3 = {}与dict3.clear
前者是把dict3指向一块新的内存,不再管原来的字典,若原来的地址未被其它引用指向,将会被Python的垃圾自动回收机制清空,如果有引用,将不会被清空。
后者是直接将dict3指向的那块内存清空。
复制字典
辨析dict4 = dict3与dict4 = dict3.copy
前者并未开辟一块新内存,后者开辟了,底层原理同上,懂得都懂。
遍历字典
遍历key
for eachkey in dict3.keys():
print(eachkey)
遍历value
for eachvalue in dict3.values():
print(eachvalue)
遍历键值对
for eachitems in dict3.items():
print(eachitems)
成员资格判断
key in dict3
返回值为bool类型
集合
集合的定义方式
num = {1, 2, 3, 6, 8, 7, 4, 9, 10, 16, 17, 14, 2, 4}
用大花括号即可定义
往集合里面添加元素
num.append(10)
集合里面删除元素
num.pop()
##随机删除一个
num.remove(4)
##删除4
注意:集合会自动排序,操作时要注意。
Python集合&字典的更多相关文章
- Python集合字典运算符
1.集合2.字典3.运算符优先级 1.集合 创建:{} set([]) 注意:创建空的集合要用set() 特点:元素唯一,无序 运算: & 交集 | 并集 - 差集 方法: s ...
- Python中字典和集合
Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...
- python集合与字典的用法
python集合与字典的用法 集合: 1.增加 add 2.删除 •del 删除集合 •discard(常用)删除集合中的元素 #删除一个不存在的元素不会报错 •remove 删除一个不存在的 ...
- python基础—字典
阅读文本需要3分钟,不建议跳读 节目清单 字典是python中最重要的数据类型,字典由“键-值”对组成的集合,字典中的“值”通过“键”来引用.这里将介绍字典的定义.访问.排序等功能. 字典的创建 字典 ...
- 深入Python(1): 字典排序 关于sort()、reversed()、sorted()
http://www.cnblogs.com/BeginMan/p/3193081.html 一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠 ...
- python集合可以进行相减
python集合可以进行相减 student = {'tom','jim','mary','tom','jack','rose'} print(student) print('rose' in stu ...
- Python集合类型的操作与应用
Python集合类型的操作与应用 一.Python集合类型 Python中的集合类型是一个包含0个或多个数据项的无序的.不重复的数据组合,其中,元素类型只能是固定数据类型,如整数.浮点数.字符串.元组 ...
- Python - 集合 - 第十一天
Python 集合 集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建 ...
- python中字典排序
一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...
随机推荐
- JVM详解(四)——运行时数据区-堆
一.堆 1.介绍 Java运行程序对应一个进程,一个进程就对应一个JVM实例.一个JVM实例就有一个运行时数据区(Runtime),Runtime里面,就只有一个堆,一个方法区.这里也阐述了,方法区和 ...
- linux系统(centos)下su和sudo命令的区别
linux系统(centos)下su和sudo命令的区别 区别 我们在日常使用过程中,这2个命令很多时候能达到相同的效果,对细节区别十分模糊,这里进行简单的解释和区分.希望大家能够正确使用这2个命令, ...
- 重学c#系列——list(十二)
前言 简单介绍一下list. 正文 这里以list为介绍. private static readonly T[] s_emptyArray = new T[0]; public List() { t ...
- VS2019 及 Visual Assist X 安装配置
Visual Studio 2019 安装 下载 https://visualstudio.microsoft.com/zh-hans/downloads/ 安装 设置 扩大 Solution Con ...
- Java基础-Java8新特性
一.Lambda表达式 在了解 Lambda 之前,首先回顾以下Java的方法. Java的方法分为实例方法,例如:Integer的equals()方法: public final class Int ...
- mybatis自定义分页拦截器
最近看了一下项目中代码,发现系统中使用的mybatis分页使用的是mybatis自带的分页,即使用RowBounds来进行分页,而这种分页是基于内存分页,即一次查出所有的数据,然后再返回分页需要的数据 ...
- elasticsearch入门(简单的crud操作)
记录一下,elasticsearch从创建索引到插入数据的一个crud操作. 一.创建索引 curl -XPUT "http://192.168.99.1:9200/productindex ...
- 单片机stm32F103单片机晶振不起振的原因分析
这是我在做单片机最小系统板时候碰到的问题,之前虽然也做过相似的板子,可是未曾出现过无源晶振不起振的问题.下面是我在遇到问题后的一些检查,排除问题的过程.本人小菜鸟一个,文章中如有错误和不足,还望各位大 ...
- DC综合与Tcl语法结构概述
转载:https://www.cnblogs.com/IClearner/p/6617207.html 1.逻辑综合的概述 synthesis = translation + logic optimi ...
- Qt char * 转QString
1.QString转char * 先将QString转换为QByteArray,再将QByteArray转换为char *. 注意:不能用char *mm = str.toLatin1().data( ...