如何通过环境变量判断仅在指定文件运行时执行Python对应函数
实现方案
你只需要读取env_file环境变量提取当前运行的文件名,再根据文件名判断是否执行add()函数即可,修改后代码如下:
完整main.py代码
import os def sub(): # 原有逻辑保留 pass def add(): # 原有逻辑保留 pass def mul(): # 原有逻辑保留 pass if __name__ == "__main__": # 读取env_file环境变量 current_file_path = os.getenv("env_file", "") # 切割路径提取最终文件名 current_file = current_file_path.split("/")[-1] # 所有场景默认执行sub、mul函数 sub() mul() # 仅当前运行文件为file2时执行add if current_file == "file2": add()
逻辑说明
- 导入
os模块读取环境变量,使用os.getenv()获取env_file取值,可兼容环境变量未配置的场景避免直接报错 - 对环境变量返回的路径字符串做切割,提取
/后的最终文件名,无需硬编码匹配完整路径,降低代码耦合 sub()和mul()为全场景通用执行函数,直接放在判断逻辑外统一调用即可- 仅当提取出的文件名等于
file2时才调用add()函数,完全匹配需求要求
内容的提问来源于stack exchange,提问作者ansh1
相关产品推荐
相关产品推荐

