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

如何让Python集中脚本自动响应插入脚本的input()输入请求?

自动响应Python插入脚本的input()输入需求

当然可以,根据你调用插入脚本的方式,有两种靠谱的解决办法:

场景1:通过subprocess调用外部脚本

如果你的集中脚本是启动独立子进程运行各个插入脚本,直接用subprocess的输入重定向功能,把固定路径传给子进程的标准输入就行:

import subprocess
import sys

# 替换成你的固定文件夹路径
FIXED_FOLDER_PATH = "/home/user/data_files"

# 所有需要执行的插入脚本列表
insert_scripts = ["insert_users.py", "insert_orders.py", "insert_products.py"]

for script in insert_scripts:
    # 把路径编码后通过stdin传给子进程,input()会自动读取
    subprocess.run(
        [sys.executable, script],
        input=FIXED_FOLDER_PATH.encode("utf-8"),
        check=True
    )

场景2:通过import导入脚本执行

如果是直接在集中脚本里导入插入脚本并调用其功能,就用「猴子补丁」替换内置的input函数,让所有input()调用直接返回固定路径:

# 先定义固定路径
FIXED_FOLDER_PATH = "/home/user/data_files"

# 备份原input函数(可选,执行完可以恢复)
original_input = __builtins__.input

# 定义替代input的函数,直接返回固定路径
def auto_input(prompt=None):
    # 可选:打印原提示,方便跟踪执行进度
    if prompt:
        print(prompt)
    return FIXED_FOLDER_PATH

# 替换全局的input函数
__builtins__.input = auto_input

# 现在导入并执行各个插入脚本的功能
import insert_users
import insert_orders
import insert_products

insert_users.run_insert()
insert_orders.run_insert()
insert_products.run_insert()

# 可选:恢复原input函数,避免影响后续代码
__builtins__.input = original_input

这两种方法都不用修改任何插入脚本,完全满足你的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 02:33:12