Python学习笔记_Day02

简介: Python学习笔记_Day02

判断


  • 数据类型也可以作为判断条件。任何值为0的数字都表示False,非0表示True;任何非空对象都表示True,空对象是False。


  • 条件表达式


```python

a = 10


b = 20


if a <= b:


…   smaller = a


… else:


…   smaller = b



smaller


10


# 将上面的判断改写为条件表达式(也叫三元运算符)


s = a if a <= b else b


s


10


```

  • 扩展if语句:多分支语句,满足某一条件就执行相应的语句块,其他条件不再判断。多分支只会执行一个分支。
if 条件1:
  语句块1
elif 条件2:
  语句块2
elif 条件3:
  语句块3
... ...
else:
  语句块n

随机数模块

>>> import random
# random.choice从给定的列表中随机选一项
>>> random.choice('abcdef')
'a'
>>> random.choice('abcdef')
'c'
>>> random.choice(['aaa', 'bb', 'cccc', 'ddd'])
'bb'
>>> random.choice(['aaa', 'bb', 'cccc', 'ddd'])
'ddd'
>>> random.choice(['aaa', 'bb', 'cccc', 'ddd'])
'ddd'

while循环


python中循环分为while循环和for循环,当循环次数未知时,使用while循环,循环次数已知,使用for循环。

while 循环条件:
    循环体内代码组

循环条件为真的时候,执行循环体内代码组。条件为真的情况和if判断一样。


break和continue


  • break:结束循环,循环体中break后续代码不再执行


  • continue:跳过本次循环,循环体中continue后续代码不再执行


else语句


循环的else语句:当循环被break,else语句不执行,否则执行


for循环


range函数


用于生成整数。


  • 参数只给一个数字,表示结束数字,起始数字默认从0开始,结束数字不包含
>>> range(10)   # 生成range对象
range(0, 10)
>>> list(range(10))   # 转换成列表,只用于查看range能生成的数字
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> for i in range(10):
...   print(i)
  • 参数给两个数字,表示起始和结束数字,结束数字不包含
>>> list(range(1, 11))
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  • range的第三个参数,是步长值
>>> list(range(1, 11, 2))
[1, 3, 5, 7, 9]
>>> list(range(10, 0, -1))
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

列表解析


便捷的快速生成列表的方法

>>> [10]
[10]
>>> [10 + 2]   # 表达式计算结果放到列表
[12]
>>> [10 + 2 for i in range(5)]   # 循环决定表达式计算几次
[12, 12, 12, 12, 12]
>>> [10 + i for i in range(1, 11)]  # 表达式可以用循环的变量
[11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
>>> [10 + i for i in range(1, 11) if i % 2 == 1]  # 判断条件为真才保留计算结果
[11, 13, 15, 17, 19]
# 等价于以下代码:
>>> nums = []
>>> for i in range(1, 11):
...   if i % 2 == 1:
...     nums.append(10 + i)
... 
>>> nums
[11, 13, 15, 17, 19]

通过列表解析生成192.168.1.0/24网段的所有IP地址:

>>> ['192.168.1.%s' % i for i in range(1, 255)]
相关文章
|
2月前
|
网络协议 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访问网络视频流的技巧。
419 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
2月前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
164 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
2月前
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
173 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
2月前
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
73 1
|
2月前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
112 1
|
2月前
|
索引 Python
Python学习笔记编程小哥令狐~持续更新、、、(上)
Python学习笔记编程小哥令狐~持续更新、、、(上)
53 2
|
2月前
|
存储 Python
Python学习笔记编程小哥令狐~持续更新、、、 (下)
Python学习笔记编程小哥令狐~持续更新、、、 (下)
35 1
|
2月前
|
存储 Python
【免费分享编程笔记】Python学习笔记(二)
【免费分享编程笔记】Python学习笔记(二)
48 0
【免费分享编程笔记】Python学习笔记(二)
|
2月前
|
Java 编译器 Go
Python学习笔记--- day01计算机基础和环境搭建(一)
Python学习笔记--- day01计算机基础和环境搭建(一)
47 2
|
2月前
|
程序员 编译器 Python
Python学习笔记--- day01计算机基础和环境搭建(二)
Python学习笔记--- day01计算机基础和环境搭建(二)
50 1