社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Jonas Schäfer  »  全部回复
回复总数  1
9 年前
回复了 Jonas Schäfer 创建的主题 » ipython评估本地目录中的文件[重复]

AS suggested on the python-dev 最近的邮件列表 runpy 模块可能是一个可行的替代方案。引用该消息:

https://docs.python.org/3/library/runpy.html#runpy.run_path

import runpy
file_globals = runpy.run_path("file.py")

有细微的差别 execfile :

  • run_path 总是创建一个新的命名空间。它以模块的形式执行代码,因此全局变量和局部变量之间没有区别(这就是为什么只有 init_globals 参数)。返回全局。

    执行文件 在当前命名空间或给定命名空间中执行。语义学 locals globals ,如果给定,则类似于类定义中的局部变量和全局变量。

  • 运行路径 不仅可以执行文件,还可以执行鸡蛋和目录(有关详细信息,请参阅其文档)。