python中的字典与集合,Python中字典和集合的用法

本文介绍了Python编程中的字典和集合的基本操作,包括定义、访问、修改和删除元素,以及集合的特性如唯一性、无序性和哈希性。还涉及到集合的交集、并集运算,并展示了相关函数的用法,如`enumerate()`、`zip()`以及`random`模块的使用。此外,文章提到了Python中`__all__`的作用以及装饰器的概念。
摘要由CSDN通过智能技术生成

本人开始学习python 希望能够慢慢的记录下去

写下来只是为了害怕自己忘记。

python中的字典和其他语言一样 也是key-value的形式  利用空间换时间 可以进行快速的查找

key 是唯一的 不可变的类型 比如 str int 等  不能是list之类的可变类型

1.定义

定义一个字典 格式{key:value,key:value}

a = {'a':80,'b':90,1:'a',2:[1,2]}

print(a)

36ee349f0ec1715a845135080ca5eedd.png

如果是定义如下

a = {'a':90,[1,2,3]:10}

5f4f2676c8f9c9ff05c5614eaa05f19f.png

则会报不能用来进行哈希存储的类型 list

2.值访问

a = {'a':80,'b':90,1:'a',2:[1,2]}

print (a['a'])

09349777c017e7bb9b6449b83724388f.png

for kv in a.items():

print(kv)

252b67ad1e785f6e48cc16d8d0f377bc.png

for key in a:

print(key)

80e9ba1ab9b0c3da5fb9f8d99ff86137.png

for key in a.keys():

print(key)

fac04bd23d16774d2e1cd540bcd27b74.png

for value in a.values():

print(value)

a81fb7fd563a95de53493633eb4fb439.png

for key,value in a.items():

print(key,value)

d574ec7e246ba88d879eca32069c0acc.png

3.值更改

print (a['a'])

a['a'] = 'abc'

print(a['a'])

f347879067ec71aae62e28292f458fc0.png

由以前的80变成了abc

4.set

set与dict一样 只是没有存储value

要创建一个set,需要提供一个list作为输入集合

a = set([1,2,3,4])

print(a)

86616db147254d34659fff520fb21a8d.png

由于与dict是一样的原理 所以说set中的key不能有重复值 ,如果有重复值  取列表前面出现的

a = set([1,2,3,3])

print(a)

abe6b9e36bfb799388667f99a92d4571.png

a = set([1,2,3,4,3,5])

print(a)

8b48a792ca1b5703d410af47e84f023e.png

5.set可以用来做集合的与和或运算

a = set([1,2,4])

print(a)

b = set([1,3,5])

print(a & b)

print(a | b)

cec0b9e9cb26cb3561ae68e5675a4bce.png

添加删除函数

a = set([1,2,4])

print(a)

a.add('abc')

print(a)

a.remove(1)

print(a)

66eb70c460d9bd23da36f52a35509c22.png

2018.10.27

Python中字典和集合

Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...

认识python中的set集合及其用法

python中,集合(set)是一个无序排列,可哈希, 支持集合关系测试,不支持索引和切片操作,没有特定语法格式, 只能通过工厂函数创建.集合里不会出现两个相同的元素, 所以集合常用来对字符串或元组或 ...

Python中字典,集合和元组函数总结

## 字典的所有方法- 内置方法 - 1 cmp(dict1, dict2) 比较两个字典元素. - 2 len(dict) 计算字典元素个数,即键的总数. - 3 str(dict) 输出字典可打印 ...

python中enumerate()函数用法

python中enumerate()函数用法 先出一个题目:1.有一 list= [1, 2, 3, 4, 5, 6]  请打印输出:0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 打印输 ...

Python中zip()与zip(*)的用法

目录 Python中zip()与zip(*)的用法 zip() 知识点来自leetcode最长公共前缀 Python中zip()与zip(*)的用法 可以看成是zip()为压缩,zip(*)是解压 z ...

python中的随机函数random的用法示例

python中的随机函数random的用法示例 一.random模块简介 Python标准库中的random函数,可以生成随机浮点数.整数.字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据 ...

python中map()和dict()的用法

map()用法 map()是python的内置函数,会根据提供的函数对指定序列做映射. 语法: map(func, iter, ...) 其中func为一个功能函数,iter表示可迭代参数序列.map ...

简单说明Python中的装饰器的用法

简单说明Python中的装饰器的用法 这篇文章主要简单说明了Python中的装饰器的用法,装饰器在Python的进阶学习中非常重要,示例代码基于Python2.x,需要的朋友可以参考下   装饰器对与 ...

Python中【__all__】的用法

Python中[__all__]的用法 转:http://python-china.org/t/725 用 __all__ 暴露接口 Python 可以在模块级别暴露接口: __all__ = [&q ...

随机推荐

Oracle知识分类之常见规范

命名规范 变量规范 1.入参,统一以I_前缀开头,且不能省略IN 2.出参,统一以O_前缀开头 3.局部变量,统一以V_前缀开头 4.常量,统一以CN_前缀开头 5.游标,统一以CUR_前缀开头 组成 ...

CSS导航的魔力——源自温谦老师《CSS彻底研究设计》

web标准出台以后,非常注重的一个标准就是希望内容与样式分离.希望HTML就干HTML该干的事.但是有的时候我们为了美观必须多多少少改动HTML 代码.下面介绍几个导航栏.               ...

Spring3 +mybatis3 之 MapperScannerConfigurer

之前一直使用"org.mybatis.spring.mapper.MapperFactoryBean"这个类在spring中配置mybatis的dao接口,后来发现如果dao太多话 ...

mongoDB2--mongoDB的下载和安装。

mongdb安装(1)安装准备我们在Linux环境下来安装mongodb,如果没有Linux操作系统的童鞋,可以使用Vmware虚拟机安装一个Linux虚拟环境来学习.这里就不再赘述.我们到mongo ...

Transactional ejb 事务陷阱

对应ejb,默认是对整个类使用事务.所以所有方法都开启事务. 而对于用TransactionAttribute注释来引用容器管理的事务,只能在第一级的方法中使用.对应类中的方法再调用其它类中方法,注释 ...

Go语言栈定义及相关方法实现

// stack 栈 package Algorithm import ( "errors" "reflect" ) // 栈定义 type Stack str ...

sqlalchemy多表联合查询(inner outer join 左右连接)详解

#按用户名摸糊查询trans_details.query.join(Uses).filter(Users.username.like('%xx%'))#select xxx from trans_de ...

【BZOJ4889】不勤劳的图书管理员(树套树)

[BZOJ4889]不勤劳的图书管理员(树套树) 题面 又是权限题,烦死了 洛谷真好 题解 分开考虑每一次交换产生的贡献. 假设交换\((x,y)\) 检查\(x\)与\(y\)对于区间\([x+1, ...

【MySQL】20个经典面试题(转)

原文链接:http://bbs.51cto.com/thread-1470880-1.html Part2:经典题目 1.MySQL的复制原理以及流程 基本原理流程,3个线程以及之间的关联: 2.my ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值