如何在Python中复用公共导入以实现DRY,减少样板代码?
Python中减少重复导入的实用策略
和C#的global using类似,Python也有几种办法能减少重复导入的样板代码,具体如下:
创建共用导入模块
这是最直接的方案:新建一个统一的导入文件,比如common_imports.py,把所有项目里重复用到的导入都放在这里:# common_imports.py import os import sys import json from datetime import datetime from typing import List, Dict之后在其他业务文件里,只需要一行就能导入所有常用内容:
from common_imports import *也可以按需导入特定模块,避免命名冲突:
from common_imports import os, datetime提示:如果项目较大,尽量避免用
*导入,防止不同模块的命名冲突。利用包的
__init__.py统一导出
如果你的代码是按包结构组织的,可以在包的__init__.py文件里预先导入常用的模块或对象,这样外部文件导入包时就能直接使用这些内容。比如:# my_package/__init__.py from .utils import format_date from .database import db_connection import pandas as pd其他文件使用时:
import my_package as pkg pkg.format_date("2024-05-20") pkg.pd.DataFrame()用别名简化长模块名导入
对于名字较长的模块,给它们起简短的别名,虽然不能减少导入行数,但能简化后续代码,同时保持导入的清晰性:import pandas as pd import numpy as np from sklearn.ensemble import RandomForestClassifier as RFCIDE自动补全与代码模板
主流IDE(比如PyCharm、VS Code)都支持自动补全导入语句,你也可以创建自定义代码模板,新建Python文件时自动插入常用的导入内容,减少手动重复输入的麻烦。
内容的提问来源于stack exchange,提问作者Sharif Rezvani
相关产品推荐
相关产品推荐

