Python3高级教程:线程与百度人脸识别应用
需积分: 16 132 浏览量
更新于2024-08-07
收藏 2.26MB PDF 举报
"Python3高级教程,适合有一定基础的Python学习者,涵盖了数据结构、字符串和文本处理、数字日期和时间等多个主题。通过实例讲解了如何使用Python进行并发线程操作,如创建、启动、检查和等待线程的结束,以及各种高级数据操作,如序列解压、字典操作、排序、过滤和映射等。同时,也涉及到了字符串的分割、匹配、替换、清理和格式化,以及数字的四舍五入、浮点数运算和复数操作等。"
在Python中,启动与停止线程是通过`threading`库实现的。要创建一个新的线程,你需要定义一个要在新线程中运行的函数,例如`countdown()`函数。然后,你可以创建一个`Thread`对象,将这个函数作为`target`参数传入,并使用`args`参数传递函数所需的参数。例如,创建一个计数器线程,倒计时10秒:
```python
import time
def countdown(n):
while n > 0:
print('T-minus', n)
n -= 1
time.sleep(5)
from threading import Thread
t = Thread(target=countdown, args=(10,))
```
线程并不会立即运行,必须调用`start()`方法来启动它。一旦启动,线程将在操作系统级别的独立线程中运行,直到目标函数执行完毕。要检查线程是否还在运行,可以使用`is_alive()`方法:
```python
t.start()
if t.is_alive():
print('Still running')
else:
print('Completed')
```
如果需要等待线程结束,可以使用`join()`方法:
```python
t.join()
print('Thread completed')
```
在数据结构方面,Python提供了丰富的操作方式。例如,可以使用解压赋值给多个变量,保留序列的最后N个元素,查找最大或最小的N个元素,实现优先级队列,字典中的键映射多个值,对字典进行排序,查找字典的共同点,删除序列中的重复元素,以及通过关键字排序字典列表等。
在字符串处理上,可以使用多种方式分割字符串,进行模式匹配和替换,忽略大小写搜索,多行匹配,Unicode文本标准化,删除不需要的字符,清理文本,对齐字符串,拼接字符串,插入变量,格式化输出,处理HTML和XML,以及进行字符串令牌解析等。
在数字和日期时间处理方面,可以对数字进行四舍五入、精确浮点数运算,格式化输出数字,进行二进制、八进制和十六进制转换,处理字节到大整数的打包和解包,进行复数运算,以及处理无穷大和NaN值。
这本书深入探讨了Python3的高级特性,对于提升Python编程技能非常有帮助。
311 浏览量
278 浏览量
1877 浏览量
2021-04-18 上传
252 浏览量
725 浏览量
2024-02-05 上传
2024-02-20 上传
210 浏览量
![](https://profile-avatar.csdnimg.cn/f5183dd968a846b597242b40a2cada59_weixin_26706567.jpg!1)
勃斯李
- 粉丝: 54
最新资源
- Orang_v1.2:犀牛软件的强大插件
- 提取GPS数据流中的GGA并计算固定解标准差
- 易语言打造自绘音乐播放器与附加皮肤模块
- Chrome资源下载与安装指南
- Java实现Udesk API v1调用示例及工单列表获取
- Vue-Admin-Plus-Nestjs-Api:深入TypeScript的项目搭建与运行指南
- 使用Keras进行微博文本的情绪分类与语义分析
- Matlab中bootgmregresspi函数的几何平均回归应用
- 探索STemWin在STM32上的应用及其图形软件库特性
- MNIST手写数字数据集:神经网络训练与测试
- 20181227年Jinnan数据集压缩包解析
- Laravel清单应用程序开发实战指南
- 提升离线手写化学方程式识别准确性
- 异步电动机无速度传感器的扩展卡尔曼滤波MATLAB仿真模型
- Python3.5.4 Windows安装包下载指南
- budgames: 简易Discord机器人助您组织CSGO赛事