我正在使用Pandas和Rest API编写脚本,以简化从源获取数据的方法。该脚本包括一系列的for循环和条件函数,这些函数创建一个数据帧并输出到Excel。
API的URL有一个数字值,该值确定确切的来源,到目前为止,我们一次只能输入一个值,运行脚本,获取数据,冲洗并重复。我想知道是否可以输入多个值并为每个初始输入值重新运行整个脚本。
我尝试在开头创建一个列表,并在每个必需的步骤编写一个for循环。效果很好,但是我们必须应用6个不同的脚本,我想知道是否有更简单的方法来编写代码,以便它可以重新运行整个脚本并输出到同一文件。
答案 0 :(得分:0)
一种自动化的简单方法是使用bash脚本。考虑:
for i in {1..5}
do
echo $i
done
这应该可以在您的终端上运行(如果您使用的是它),它将打印数字1到5。要运行python脚本,您可以执行以下操作:
for i in {1..5}
do
python my_script.py $i
done
您的脚本将在输入1到5上运行。
如果您希望将所有内容保留在Python中,则可以尝试以下操作:
#looper.py
import subprocess
for i in range(5):
subprocess.call(['python', 'my_script.py', str(i)])
#my_script.py
import sys
print(sys.argv[1])