道歉,如果这个问题很简单,我就是蟒蛇的业余爱好者。
我目前正在尝试自动执行一系列linux命令, 使用python脚本。 (特别是关于使用ciao命令下载和分析钱德拉望远镜数据)
简而言之,我的目标是脚本要求用户输入一个5个字符长的数字字符串,该字符串存储为变量并随后插入到命令中,以便从脚本运行。
E.G以下命令,其中星号将由用户输入的字符串替换。
import os
os.system("download_chandra_obsid *****")
os.chdir("usersc/####/Downloads/*****")
os.system("dmkeypar acisf*****0N003_full_img2.fits dec echo=yes")
等
有没有一种简单的方法来实现它?
提前致谢...
答案 0 :(得分:1)
使用number = input("Please type five digit number").strip()
从用户处获取号码。如果要检查它是否是有效数字,请使用以下结构:
while True:
num = input("Please type five digit number").strip()
if num.isdigit() and len(num) == 5:
break
然后对每个字符串使用.format()
来添加数字,如下所示:
os.system("download_chandra_obsid {0}".format(num))
(这只适用于python 2.6+,我认为)
有关str.format()
答案 1 :(得分:0)
import os
user_inputted = input('Enter your string')
# Perform validations on the input like length etc.
os.system("download_chandra_obsid {}".format(used_inputted))
os.chdir("usersc/####/Downloads/{}".format(used_inputted))
os.system("dmkeypar acisf{}0N003_full_img2.fits dec echo=yes".format(used_inputted))