You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何拆分Python大型循环到多文件并在Jupyter中调用模块代码

解决方案:模块化代码拆分与Jupyter调用

1. 重构代码到test_time.py

把时间计算逻辑封装成函数(避免全局变量依赖,提升可维护性),修改后的test_time.py内容如下:

from datetime import datetime, timedelta
import pytz

def get_rounded_central_time():
    # 修正原注释错误:此处定义的是美国中部时区,非东部
    central_timezone = pytz.timezone('US/Central')
    current_time = datetime.now(central_timezone)
    # 计算向上取整到最近5分钟的时间点
    rounded_time = current_time + timedelta(minutes=(5 - current_time.minute % 5))
    return rounded_time

# 可选:添加测试代码,直接运行该文件时验证功能
if __name__ == "__main__":
    print("当前中部时区向上取整5分钟的时间:", get_rounded_central_time())

2. 在Jupyter Notebook main.ipynb中调用

确保test_time.py和main.ipynb处于同一目录,在笔记本单元格中执行以下代码:

# 导入模块中的函数
from test_time import get_rounded_central_time

# 调用函数获取计算结果
rounded_time = get_rounded_central_time()

# 验证结果
print(rounded_time)

3. 针对大规模代码拆分的扩展建议

  • 按功能划分模块:将数百行代码按业务逻辑拆分为多个.py文件(比如data_utils.py处理数据、time_processing.py处理时间、visualization.py负责绘图),每个文件专注单一功能。
  • 封装为函数/类:避免在模块中直接写全局执行代码,全部封装成函数或类,便于重复调用和维护。
  • 处理跨目录模块:如果模块不在Notebook同一目录,可通过以下方式添加路径:
    import sys
    # 替换为你的模块所在目录的绝对路径
    sys.path.append("/Users/yourname/projects/your_modules")
    
    from test_time import get_rounded_central_time
    
  • 添加模块文档:在函数/模块开头添加文档字符串,说明功能、参数和返回值,方便后续维护时快速理解。

内容的提问来源于stack exchange,提问作者user2205916

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 03:52:33