1. Python 中的模块和包
在 Python 开发中,模块和包是组织代码的核心工具,它们能让项目结构更清晰,便于复用和维护。
模块 (Module)
模块本质上是一个包含 Python 代码的文件,通常以 .py 为扩展名。它可以定义函数、类或变量,也可以直接执行逻辑。
使用示例:
import mymodule
print(mymodule.greet("Alice"))
print(mymodule.pi)
创建方法:新建一个 mymodule.py 文件即可:
# mymodule.py
def greet(name):
return f"Hello, {name}!"
pi = 3.14159
包 (Package)
包是一种将多个模块组织在一起的目录结构。关键在于目录内必须包含一个 __init__.py 文件(可以为空),这告诉 Python 将该文件夹视为一个包。
目录结构:
mypackage/
__init__.py
module1.py
module2.py
导入方式:
from mypackage import module1, module2
print(module1.func1())
print(module2.func2())
面试提示:回答时建议明确区分'文件'与'目录'的概念,强调
__init__.py的作用(标识包及初始化命名空间)。同时可以提及命名空间管理如何避免冲突,以及import的不同写法及其优缺点。
2. 一行代码反转字符串
利用切片操作是 Python 中最优雅的实现方式:
reversed_string = original_string[::-1]
这段代码从末尾开始向前遍历,步长为 -1。虽然简单,但面试中面试官可能会追问内存效率、Unicode 字符处理或与其他语言实现的对比。
3. 面向对象中带双下划线的特殊方法
这些方法常被称为'魔法方法'(Magic Methods)或 Dunder Methods,用于实现类的特定行为。


