信息发布→ 登录 注册 退出

如何用python调用另一个python脚本?

发布时间:2025-11-27

点击量:
答案:Python中调用另一脚本的方法有四种:1. 使用os.system("python other_script.py")可简单运行脚本但无法获取输出;2. 推荐使用subprocess.run(["python", "other_script.py"], capture_output=True, text=True)能捕获输出和错误,支持传参;3. 若需复用函数,可将目标脚本作为模块import并调用其函数,要求其代码结构合理;4. 使用exec读取并执行脚本内容,适用于动态执行但存在安全风险。根据需求选择:独立运行用subprocess,函数复用用import,调试可用os.system或exec。

在Python中调用另一个Python脚本,有多种方法可以实现,常用的方式包括使用 os.systemsubprocess 模块,以及直接导入模块(适用于函数级别的复用)。下面介绍几种实用的方法。

1. 使用 os.system() 调用脚本

这是最简单的方式,通过系统命令运行另一个Python脚本。

import os
os.system("python other_script.py")

优点是写法简单,缺点是无法获取输出结果,也不便于传递复杂参数。

2. 使用 subprocess.run() 推荐方式

更强大且安全的方式是使用 subprocess 模块,可以控制输入输出,还能捕获执行结果。

import subprocess

result = subprocess.run(["python", "other_script.py"], capture_output=True, text=True)
print("标准输出:", result.stdout)
print("错误信息:", result.stderr)

如果脚本需要传参,可以这样写:

subprocess.run(["python", "other_script.py", "arg1", "arg2"])

3. 直接导入模块(适用于函数调用)

如果想复用另一个脚本中的函数,推荐将其当作模块导入。

假设文件名为 helper.py,内容如下:

def say_hello():
    print("Hello from helper!")

在主脚本中导入并调用:

import helper
helper.say_hello()

这种方式效率高,适合结构化项目,但要求被调用的脚本没有直接的顶层执行逻辑(或用 if __name__ == "__main__": 包裹)。

4. 使用 exec() 执行脚本文件内容

可以读取并执行另一个脚本的内容,适用于动态执行。

with open("other_script.py") as f:
    exec(f.read())

注意:exec 存在安全风险,不建议对不可信的脚本使用。

基本上就这些。根据需求选择合适的方式:想完全独立运行脚本用 subprocess;想复用函数就 import;临时调试可以用 os.system 或 exec。

标签:# python脚本  # python  # ai  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!