R: Reticulate -- 如何调用需要多个命令行参数的 Python 脚本

R: Reticulate -- How to call a Python script that requires multiple command line arguments

我有一个名为 DataRetrieval.py 的脚本。此脚本连接到内部数据库,检索数据并将该数据写入 Excel 文件。此脚本导入以下内容:

a) utils.py 包含多个函数的辅助模块

b) 一个 DataRetrieval.cfg 配置文件 (其中包含 DataRetrieval.py 脚本需要的所有登录信息和 SQL 查询)

DataRetrieval.py 脚本采用以下 3 个命令行参数:

DataRetrieval.py   DataRetrieval.cfg   03/01/20

(脚本本身、配置文件和开始日期)

我想使用 R 中的 Reticulate 包来:

  1. 分别调用这 3 个命令行参数
  2. 将脚本的输出(这是一个 Excel 文件)设置为一个对象(最终目标是在 Shiny 仪表板中调用该对象)

我正在考虑使用 source_python() 函数,但我认为它不允许多个位置参数。错误信息 returns:

> source_python("DataRetrieval.py")
Error in py_run_file_impl(file, local, convert) : SystemExit: 2
usage: python.exe [-h] [-e ENDDATE] config startDate
python.exe: error: the following arguments are required: config, startDate

使用 Reticulate 包调用这 3 个命令行参数的最佳方法是什么?也许一个单独的 .py 文件封装了上面的 3 个参数?

谢谢!

编辑: 我通过创建一个名为 retrieve.py 的 .py 文件并将该文件传递给 source_python() Reticulate 函数解决了这个问题。 retrieve.py 文件内容如下:

import os

os.system('python DataRetrieval.py DataRetrieval.cfg 02/01/20')