Python学习笔记系列之(三)

简介: Python学习笔记系列之(三)

1、一个列表的综合应用常由包含 for 语句,接着零个或多个 for 或者 if 语句的方括号组成。结果将是一个满足表达式中 for 和 if 语句的新列表。

[(x,y) for x in[1,2,3]  for y in [3,1,4] if x ! = y]
输出
[(1,3),(1,4),(2,3),(2,1),(2,4),(3,1),(3,4)]
等同于
>>> combs=[]
>>> for x in [1,2,3]:
...for y in [3,1,4]:
...if x ! = y:
...combs.append((x,y))
>>> combs
[(1,3),(1,4),(2,3),(2,1),(2,4),(3,1),(3,4)]

注意: 在两个表达式中的 for 和 if 的次数应该相等。

创建一个包含二位数组的列表

>>> [(x,x**2) for x in range(6)]
[(0,0),(1,1),(2,4),(3,9),(4,16),(5,25)]

2、元组

一个元组是由一些被逗号分隔的数字或字符串组成的

例如: t=12345,54321, ’hello!’

元组元素是不可变的,当输出时元组常常被括号括起来,因此嵌套元组可以被正确解释。

每个空元组可以被一对空括号所创建

翻转元组的操作可以如下:

>>> x,y,z=t

3、set{}集合

一个 Set 是一个不包含重复元素的无序集合。基本应用是成员资格测试和消除重复元素。 Set 对象也提供一些算术操作符,比如连接,交集,差值和堆成差。

花括号或 set()方法都可以用来创建集合。注意如果你想要创建一个空集合,必须要用 set()而不能用{}。 后者创建了一个空字典。

a=set('abrassfb')  
b=set('asdgkle')print(a)    #在a中唯一字母
注释;也可以print(a-b),(a&b)等等

4、字典

不像序列能用数字可以索引,在字典中是任何一种不变类型的关键字 keys

来查询。字符串和数字是常见的关键字。 如果元组中仅仅包含字符串,数组或者重数,那

么元组也可以充当关键字。但是如果元组中直接或者间接包含可变的对象,那么元组就不能

做关键字。

把字典认为是一对无序的 key:value 的对,并且关键字在一个字典中是唯一的是对字典非

常正确的认识。可以用 del 方法来删除一对键值对。当你用一个已经存在的键去保存值时,

与其相关联的值将会丢弃。用没有存在的关键字去获得值时会出错。

用字典中的方法 list(d.keys())就可以获得包含字典中所有的关键字的列表,列表中的关

键字是无序的,如果你想要对关键字进行排序,可以用方法 sorted(d.keys()).可以用 in 关

键字来检查单个关键字是否在字典中。

也可以用dict([])来定义一个字典

5、遍历技巧

当通过字典遍历数据时,用 items()方法就可以同时把关键字和相对应的值从字典中取出。

例如:

tel={'jack':4098,'scape':3425}
for k,v in tel.items():
      print(k,v)
相关文章
|
13天前
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
49 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
14天前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
82 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
14天前
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
66 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
13天前
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
38 1
|
13天前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
48 1
|
19天前
|
索引 Python
Python学习笔记编程小哥令狐~持续更新、、、(上)
Python学习笔记编程小哥令狐~持续更新、、、(上)
38 2
|
19天前
|
存储 Python
Python学习笔记编程小哥令狐~持续更新、、、 (下)
Python学习笔记编程小哥令狐~持续更新、、、 (下)
28 1
|
19天前
|
存储 Python
【免费分享编程笔记】Python学习笔记(二)
【免费分享编程笔记】Python学习笔记(二)
38 0
【免费分享编程笔记】Python学习笔记(二)
|
21天前
|
Java 编译器 Go
Python学习笔记--- day01计算机基础和环境搭建(一)
Python学习笔记--- day01计算机基础和环境搭建(一)
34 2
|
21天前
|
程序员 编译器 Python
Python学习笔记--- day01计算机基础和环境搭建(二)
Python学习笔记--- day01计算机基础和环境搭建(二)
35 1