gpt4 book ai didi

python - 索引错误: list index out of range - Opening file from cli - argv[1]

转载 作者:行者123 更新时间:2023-12-01 01:23:10 25 4
gpt4 key购买 nike

使用此方法:

import croniter
import datetime
import re
import time
from sys import argv

now=datetime.datetime.now()

def main():
filename=open(sys.argv[1])
f1 = filename.readlines()
for x in f1:
if not re.match('^[0-9*]', x):
continue
a = re.split(r'\s+', x)
cron = croniter.croniter(' '.join(a[:5]), now)
print("%s %s" % (cron.get_next(datetime.datetime), ' '.join(a[5:])))

if __name__ == "__main__":
main()

我的目标是打开一个文件(一个 crontab 文件,在标准输入上提供),但是这一行:filename=open(sys.argv[1])正在向我抛出这个:

Traceback (most recent call last):
File "cron.py", line 25, in <module>
main()
File "cron.py", line 13, in main
filename=open(sys.argv[1])
IndexError: list index out of range

我正在使用这样的脚本:python cron.py < /etc/crontab

我仔细检查了有关以这种方式打开文件的示例,它似乎没问题。

有什么想法吗?

最佳答案

def main():
filename=open(sys.argv[1])

这可以与python cron.py/etc/crontab一起使用。

但是,您没有参数,并使用 stdin 提供输入

更改为:

filename = sys.stdin

(并且不要关闭它)

旁白:filename 的选择不当,因为它是一个文件句柄。这增加了输入流和输入文件之间的混淆。

关于python - 索引错误: list index out of range - Opening file from cli - argv[1],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53597973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com