当前位置:   article > 正文

python中集合运算_Python基础__字典、集合、运算符

implicit trucation of vector type

之前讨论的字符串、列表、元组都是有序对象,本节则重点讨论无序对象:字典与集合。

一.字典

列表是Python中的有序集合,列表中的序指的是列表中的元素与自然数集形成了一个一一对应的关系。例如L=[‘I’,’love’,’Python’],则有L[0]=’I’,L[1]=’love’,L[2]=’Python’,在这里可以认为0是’I’的键,‘I’是键0的内容,则存在一个键值对的关系。字典相对于列表来说更为灵活,列表的键只能是自然数,而字典的键可以是任何变量名。可以将字典理解为灵活的列表。

下面对字典的属性总结如下:

1.字典通过键值读取

2.任意对象的无序集合

3.可变长、异构、任意嵌套

4.属于可变的映射类型,键与值存在一一映射的关系

5.相当于一个散列表

字典的定义

1.定义

di={'w':123,'l':456,'x':789} 键值对:key:value

字典的元素满足键值一一对应,每一个键值对成为一个item。

空字典:d={} 或 d=dict()

2.取值: 索引取关键字di[‘w’]

3.修改:di[‘w’]=’abc’

特点: 无序

key唯一不可变

字典是可变的

字典的方法

1.>>> di.fromkeys(['a','b','c'],123) #用给定的键建立新的字符串,每一个键有默认值

{'a': 123, 'b': 123, 'c': 123} #字典的键值关系与有序序列的索引关系差不多

2.di.get('r') #存在则返回值,不存在什么也不返回

3.>>> di.items() #查看字典的每一项

dict_items([('w', 123), ('l', 456), ('x', 789)]) #以列表的形式返回

4.di.keys() #查看字典的所有键,以列表的形式返回

5.di.values() #查看字典的所有值,以列表的形式返回

6.di.pop(‘w’) #指定键删除,返回对应的键值并将之删除。若不存在报错

7.di.popitem() #随机删除某一项,并以元组形式返回

9.di.setdefault('l',123) #类似于get,存在就返回值,不存在就更新(添加)到字典

10.di.update(di1) #将di1字典的内容添加并更新到原来的字典di,无则添加,有则覆盖

集合

一. 集合的定义

set={1,2,3,4} #不重复

>>> set={1,2,2,4}

>>> set

{1, 2, 4}

特性: 唯一性(集合中不能存在可变的内容如列表)

无序性

>>> set={1,'a',2,4,'b'}

>>> set

{1, 2, 4, 'a', 'b'}

创建一个空集合:A=set()

注意:A={} 是创建一个空字典,而不是集合

二.集合的运算

se1={1,2,3}, se2={2,3,'a'}

并集:| se1|se2 ={1, 2, 3, 'a'}

交集:& se1&se2 ={2, 3}

差集:- se1-se2 ={1} 前面集合减去两个集合重复的部分

与非集:^ se1-se2 ={1, 'a'}

se1.add(5) 添加单个元素

se1.update('asdfg') 添加可迭代对象

se1.remove('f') 指定移除

se1.pop() 随机抛出一个元素

当要取出一个指定的元素是可以把集合转化为序列,然后再取出

list(se)

集合是可变的

总结:

不可变:字符串,元组,数值

可变:列表,字典,集合

三.运算符

算术运算符:+,-,*,/,%,**,//

赋值: =,+=,-=,*=,/=,%=,**=

比较运算符: ==,!=,>,<,>=,<=

成员运算符:in,not in

身份运算符:is,not is

逻辑运算符:and,or,not

运算顺序:

** 幂运算

+,-,*,/,% 算术运算符

<,>,<=,>= 比较运算符

==,!= 比较运算符

=,%=,/=,-=,+=,*=,**= 赋值运算符

is,not is 身份运算符

in,not in 成员运算符

not>and>or 逻辑运算符

Python 全栈开发二 python基础 字符串 字典 集合

一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. >>ch = "wallace" >>ch1 = 'walla ...

python基础之字典dict和集合set

作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...

『Python基础-11』集合 (set)

# 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...

Python基础数据类型之集合

Python基础数据类型之集合 集合(set)是Python基本数据类型之一,它具有天生的去重能力,即集合中的元素不能重复.集合也是无序的,且集合中的元素必须是不可变类型. 一.如何创建一个集合 #1 ...

Python基础数据类型-字典(dict)

Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...

Python基础篇(set集合)

Python基础篇(set集合,深浅拷贝) set集合是Python的一个基本类型,一般是不常用.set中的元素是不重复的.无序的里边 的元素必须是可hash的比如int,str,tuple,bool ...

Python基础篇(格式化输出,运算符,编码):

Python基础篇(格式化输出,运算符,编码): 格式化输出: 格式:print ( " 内容%s" %(变量)) 字符类型: %s  替换字符串      %d 替换整体数字  ...

Python基础__函数

本节将进入函数的介绍,函数是Python基础中最精彩的部分之一,接下来将对函数做详细介绍.函数 函数就是对代码进行一个封装.把实现某一功能的代码进行封装到一起.下次需要使用时不需要进行编写代码直接调用 ...

Python基础知识---字典

现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典:  key --> valu ...

随机推荐

Git和Code Review流程

Code Review流程1.根据开发任务,建立git分支, 分支名称模式为feature/任务名,比如关于API相关的一项任务,建立分支feature/api.git checkout -b fea ...

spark dataframe 类型转换

读一张表,对其进行二值化特征转换.可以二值化要求输入类型必须double类型,类型怎么转换呢? 直接利用spark column 就可以进行转换: DataFrame dataset = hive.s ...

poj 2013 Symmetric Order 解题报告

题目链接:http://poj.org/problem?id=2013 设长度非递减的字串序列为s[1]...s[n].设计递归子程序print(n),其中n为字串序号,每分析1个字串,n=n-1. ...

hlsl 和cg 涉及 mul 左乘 右乘

error: 1. mul' implicit truncation of vector type 2. matrixXXX: array dimensions of(unknown scope en ...

C语言学习总结(一) 基本语法

第一章--C语言的基本概念 丹尼斯 里奇 一.什么是C语言? 定义:是一个面向过程的计算机高级语言--不需要任何运行环境便能运行的程序语言: 发展:目前是C11      (K&R C—> ...

ubuntu中文论坛

http://forum.ubuntu.org.cn/index.php?sid=e40344219c81dbc4b289135a71db4efd

html meta标签使用及属性介绍

自学前端开始,我对meta标签接触不多,主要把精力都集中在能显示出来的标签上,比如span.button.h1等等.有时候去查看一些知名网站的源码,发现head标签里有一大摞的meta. 今天就来学习 ...

iOS修改状态栏颜色

application.statusBarStyle = .LightContent // 在APPlication中设置全局状态栏颜色,为白色 application.statusBarHidden ...

PAT甲题题解-1021. Deepest Root (25)-dfs+并查集

dfs求最大层数并查集求连通个数 #include #include #include #inclu ...

Ubuntu17安装Jenkins

Java安装 Jenkins基于Java, 所以需要先安装java. Linux下安装java只要配置java环境变量即可. 首先,解压java到相应目录,我一般习惯把安装的软件放到目录/usr/lo ...

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/651404
推荐阅读
相关标签
  

闽ICP备14008679号