如何让一个python文件请求用户输入,然后将此输入传递给第二个.py文件?

如何让一个python文件请求用户输入,然后将此输入传递给第二个.py文件?,python,numpy,import,python-import,Python,Numpy,Import,Python Import,我有一个analyze.py文件,它执行三个步骤: 它将.csv文件作为numpy数组导入 它要求用户输入 (例如,x=input('输入要与数组相乘的数字?') 使用该输入执行一些数组操作 (例如,output\u array=csv\u array*x) 在第3步之后,我想关闭现有窗口并自动运行第二个.py文件,该文件导入新数组(output_array) 换句话说,我想把一个用户输入变量从一个py文件传递到另一个py文件。我该怎么做 请注意,我知道类似的问题(例如),但我猜不出如何处理用户

我有一个analyze.py文件,它执行三个步骤:

  • 它将.csv文件作为numpy数组导入
  • 它要求用户输入 (例如,
    x=input('输入要与数组相乘的数字?')
  • 使用该输入执行一些数组操作 (例如,
    output\u array=csv\u array*x
  • 在第3步之后,我想关闭现有窗口并自动运行第二个.py文件,该文件导入新数组(output_array)

    换句话说,我想把一个用户输入变量从一个py文件传递到另一个py文件。我该怎么做


    请注意,我知道类似的问题(例如),但我猜不出如何处理用户输入。

    有几种方法可以解决此问题

    • 使用脚本参数
    • 写入文件并读取同一文件
    • 使用消息队列和工作线程(复杂得多)
    我建议您使用第一种方法,为第二个脚本使用参数。您可以这样调用脚本:
    python script2.py arg1 arg2
    ,并在
    script2
    中使用
    argsv
    来读取相关参数

    $python script2.py arg1 arg2
    >>>导入系统
    >>>len(系统argv)#3
    
    一种方法是使用
    子流程。运行
    执行第二个python文件。通过这种方法,可以将输入数组作为参数传递给第二个python文件

    从子流程导入运行
    命令=[]
    append(PYTHON可执行文件路径)
    追加命令(第二个文件路径)
    command.append(数组_转换为_字符串)#例如,用破折号“-”分隔数组元素
    已完成的\u进程=运行(命令、捕获\u输出=真、文本=真)
    
    因此,您需要实施三件事:

    • 将数组转换为字符串的函数
    • 一个函数,用于执行向后转换
    • 第二个python文件#标准库中的参数解析有argparse模块

    是否可以将用户输出存储在配置文件中?这就是我设置类似项目的方式。第二个脚本从该文件中提取必要的信息。您好,欢迎访问SO。请花时间阅读本节,以了解如何发布一个好的问题,以便社区能够帮助您。P请编辑您的帖子,并添加一个和您可能得到的任何错误或日志。