sys.stdin 在 python on unix shell
sys.stdin in python on unix shell
我正在通过 unix shell 编写 python 程序。当我编写程序时,我不得不硬编码我的数据。但是我的目标是能够像这样 shell 标准输入数据
python3 sample.py data.txt
其中sample.py是程序,data.txt是数据。 Data.txt 包含由制表符分隔的两列数据。然后我打印以确保它正常工作。我写的读取数据进去的代码方式如下
for line in sys.stdin:
words = re.split(r'\t',line)
print(words)
拆分标签行的内容,并打印以确保其正常工作。当运行行"python3 sample.py data.txt"时,它什么都不做,但是程序不会像死循环之类的那样退出。我怎样才能打印出来?
有
python3 sample.py data.txt
您正在将 data.txt
作为 参数 传递。要将其内容作为输入(到标准输入)传递,请执行:
python3 sample.py < data.txt
redirection operator <
是一个 shell 构造并引用标准输入。
我正在通过 unix shell 编写 python 程序。当我编写程序时,我不得不硬编码我的数据。但是我的目标是能够像这样 shell 标准输入数据
python3 sample.py data.txt
其中sample.py是程序,data.txt是数据。 Data.txt 包含由制表符分隔的两列数据。然后我打印以确保它正常工作。我写的读取数据进去的代码方式如下
for line in sys.stdin:
words = re.split(r'\t',line)
print(words)
拆分标签行的内容,并打印以确保其正常工作。当运行行"python3 sample.py data.txt"时,它什么都不做,但是程序不会像死循环之类的那样退出。我怎样才能打印出来?
有
python3 sample.py data.txt
您正在将 data.txt
作为 参数 传递。要将其内容作为输入(到标准输入)传递,请执行:
python3 sample.py < data.txt
redirection operator <
是一个 shell 构造并引用标准输入。