Python编程基础:12个关键技巧
180 浏览量
更新于2024-08-30
收藏 93KB PDF 举报
"这篇文章主要介绍了Python编程中12个常用的基础知识,包括正则表达式替换、遍历目录、列表排序与去重、字典操作、类型转换、时间处理、命令行参数解析、打印格式化、进制转换、调用系统命令以及文件的读写。"
1. 正则表达式替换
在Python中,可以使用`re`模块进行正则表达式的操作。例如,要将字符串`line`中所有出现的`overview.gif`替换为其他字符串,可以使用`re.sub()`函数。匹配到的数据可以通过传递给替换函数的参数引用,如`match.group(1)`。
2. 遍历目录方法
Python的`os`模块提供了`walk()`函数,可以递归遍历目录及其子目录。例如,如果需要找到`/data`目录下所有`.t2t`扩展名的文件,可以使用`os.walk()`,并将不需要的子目录(如`.svn`)排除在外。
```python
import os
file_list = []
root_dir = '/data'
for root, sub_folders, files in os.walk(root_dir):
if '.svn' in sub_folders:
sub_folders.remove('.svn')
for file in files:
if file.find('.t2t') != -1:
file_dir_path = os.path.join(root, file)
file_list.append(file_dir_path)
```
3. 列表按列排序
当列表的元素是元组时,可以根据元组的某一列进行排序。使用`sorted()`函数结合`lambda`表达式实现。例如,按元组的第二列和第三列降序排序:
```python
a = [('2011-03-17', '2.26', 6429600, '0.0'), ('2011-03-16', '2.26', 5432100, '0.1')]
sorted_a = sorted(a, key=lambda x: (x[1], -x[2]))
```
4. 字典操作
字典可以通过`keys()`, `values()`, `items()`获取键、值或键值对。若需排序字典,需先转换成列表,因为字典本身是无序的。例如,根据值进行排序:
```python
b = {'key1': 3, 'key2': 1, 'key3': 2}
sorted_b = dict(sorted(b.items(), key=lambda item: item[1]))
```
5. 字典、列表、字符串互转
可以通过`dict()`, `list()`, `str()`函数进行类型转换。例如,将列表转换成字典:
```python
c = ['key1', 'value1', 'key2', 'value2']
d = dict(zip(c[::2], c[1::2]))
```
6. 时间对象操作
使用`datetime`模块处理日期和时间,如`datetime.now()`, `datetime.strptime()`, `datetime.strftime()`等。
7. 命令行参数解析
Python的`getopt`模块可以解析命令行参数,例如:
```python
import getopt
opts, args = getopt.getopt(sys.argv[1:], 'ho:', ['help', 'output='])
```
8. print格式化输出
`print()`函数支持格式化输出,如`print(f"Name: {name}, Age: {age}")`。
9. 进制转换
使用内置的`bin()`, `oct()`, `hex()`进行二进制、八进制、十六进制转换。
10. 调用系统命令或脚本
`os.system()`或`subprocess`模块可以调用系统命令,如`os.system('ls -l')`。
11. Python读写文件
`open()`函数用于打开文件,`read()`, `write()`, `close()`等方法进行读写操作。
12. 文件读写示例
读取文件:
```python
with open('example.txt', 'r') as f:
content = f.read()
```
写入文件:
```python
with open('example.txt', 'w') as f:
f.write('Hello, World!')
```
这些基础知识构成了Python编程的基本工具箱,对于日常的编程工作非常实用。理解并掌握它们,能帮助开发者更高效地编写Python代码。
340 浏览量
159 浏览量
508 浏览量
2024-12-18 上传
166 浏览量
2024-12-18 上传
点击了解资源详情
181 浏览量
点击了解资源详情

weixin_38659648
- 粉丝: 4
最新资源
- nitroproof:伪造硝基服务器防弹命令与操作指南
- Flash 8 中文教程手册:全面入门指南
- USB Redirector 6.0 汉化版:实现USB设备远程共享
- C#实现:在Windows窗体下探索生命游戏的奥秘
- 7805与7905封装的Tob263:深入解析与应用
- STM32旋转倒立摆控制源码解析
- z-tree增删改查实现与右键菜单仿IMO办公软件教程
- 深入解读EXFAT文件系统及其存储原理
- Extjs4中文API文档发布:汉化80%快速易用
- 摇不停DJ舞曲网:官方免费高音质在线播放器
- TortoiseSVN 1.8.8.25755版本发布:免费开源的版本控制客户端
- Python网络编程:掌握socket编程的要点
- MATLAB如何高效读取txt文件方法详解
- Unigui按钮特效实现与Delphi应用技巧
- Android界面优化:深入应用XML Shape技术
- 霹雳游侠制作的绿色网络电台软件体验