1. os 模块:与操作系统交互

os 模块是 Python 标准库中用于与操作系统交互的核心模块。它提供了大量函数来操作文件、目录、进程和环境变量。

1.1 常用功能

  • 文件和目录操作os.listdir()os.mkdir()os.remove()os.rename()
  • 路径处理os.path.join()os.path.exists()os.path.abspath()
  • 环境变量os.environ 字典,os.getenv()
  • 进程管理os.system()os.popen()

1.2 示例代码

import os
列出当前目录下的所有文件和文件夹
print(os.listdir('.'))
创建新目录
os.mkdir('new_folder')
获取文件的绝对路径
abs_path = os.path.abspath('example.txt')
print(abs_path)
检查文件是否存在
if os.path.exists('example.txt'):
print('文件存在')
else:
print('文件不存在')

2. 内置函数(Built-in Functions)

Python 内置函数是无需导入任何模块即可直接使用的函数,它们是 Python 语言的核心组成部分。

2.1 常用内置函数分类

  • 类型转换int()str()list()dict()
  • 数学运算abs()round()sum()max()min()
  • 迭代与序列操作len()range()enumerate()zip()
  • 输入输出print()input()
  • 对象与属性type()isinstance()hasattr()getattr()

2.2 示例:使用内置函数处理数据

# 类型转换与数学运算
num_str = '123'
num_int = int(num_str)  # 字符串转整数
print(abs(-10))         # 绝对值
print(sum([1, 2, 3, 4])) # 求和
迭代操作
names = ['Alice', 'Bob', 'Charlie']
for idx, name in enumerate(names, start=1):
print(f'{idx}. {name}')
使用 zip 合并两个列表
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f'{name} is {age} years old.')

3. 函数注解(Function Annotations)

函数注解是 Python 3 引入的语法,用于为函数参数和返回值添加元数据(类型提示或其他信息),提高代码可读性,并可供 IDE 和静态类型检查工具(如 mypy)使用。

3.1 基本语法

def greet(name: str, age: int) -> str:
    """返回一个问候字符串。"""
    return f'Hello {name}, you are {age} years old.'
注解存储在函数的 annotations 属性中
print(greet.annotations)
输出:{'name': <class 'str'>, 'age': <class 'int'>, 'return': <class 'str'>}

3.2 复杂类型与默认值

from typing import List, Optional
def process_items(items: List[str], limit: Optional[int] = None) -> List[str]:
"""处理字符串列表,可选限制返回数量。"""
if limit is not None:
return items[:limit]
return items
result = process_items(['apple', 'banana', 'cherry'], limit=2)
print(result)  # 输出:['apple', 'banana']

注意:注解不会影响运行时行为,Python 解释器不会强制进行类型检查。

4. 函数的调试(Debugging)

调试是发现和修复代码错误的过程。Python 提供了多种调试工具和方法。

4.1 使用 print 进行简单调试

def calculate_sum(a, b):
    print(f'[DEBUG] 输入: a={a}, b={b}')  # 打印输入值
    result = a + b
    print(f'[DEBUG] 结果: {result}')      # 打印计算结果
    return result
calculate_sum(5, 3)

4.2 使用断言(assert)

def divide(x, y):
    assert y != 0, '除数不能为零!'  # 如果 y==0,程序会抛出 AssertionError
    return x / y
print(divide(10, 2))  # 正常
print(divide(10, 0)) # 会触发 AssertionError: 除数不能为零!

4.3 使用 pdb(Python 调试器)

pdb 是 Python 内置的交互式调试器,可以设置断点、单步执行、查看变量值等。

import pdb
def buggy_function(x):
result = 0
for i in range(x):
pdb.set_trace()  # 在此处进入 pdb 调试模式
result += i * 2
return result
运行 buggy_function(3) 会进入调试模式,可使用命令:
n (next) - 执行下一行
c (continue) - 继续执行直到下一个断点
p variable - 打印变量值
q (quit) - 退出调试

4.4 使用 IDE 的图形化调试器

现代 IDE(如 PyCharm、VSCode)提供了更友好的图形化调试界面,支持设置断点、查看调用栈、监视变量等,是更高效的调试方式。

5. 总结与关联

这四个知识点是 Python 编程中紧密相关的核心技能:

  1. os 模块让你能够与操作系统交互,管理文件和进程。
  2. 内置函数是 Python 的基础工具,无需导入即可完成常见操作。
  3. 函数注解提升了代码的可读性和可维护性,是现代 Python 开发(尤其是大型项目)的推荐实践。
  4. 函数调试是发现和解决问题的必备技能,从简单的 print 到专业的 pdb 和 IDE 调试器,工具链丰富。

建议在学习过程中多动手实践,将 os 模块用于文件操作,用内置函数处理数据,为函数添加类型注解,并尝试使用不同的调试方法来排查代码问题。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐