关于Python:STDIN文件读取查询

STDIN file read query

本问题已经有最佳答案,请猛点这里访问。

我正在做一个小项目,在这个项目中我必须从stdin读取文件。我不知道这意味着什么,我问他告诉我的教授,不需要像我们通常做的那样打开和关闭文件。

1
sFile = open ("file.txt",'r')

我不必把文件当作论点来传递。

我有点困惑他想要什么。


一个输入的输入是从不同的来源获取信息取决于输入。有一位非常简单的插图(学院代码调用它:script.py吧):

1
2
3
4
5
import sys

text = sys.stdin.read()

print text

你可以管你的脚本是与输入文件像这样:

1
$ more file.txt | script.py

本案例中,输出的第一个管道的部分是内容的文件是由我们的变量(在本案例的最终文本,它会打印出)。

当左空(即没有任何额外的输入样等):

1
$ python script.py

它让你写类似于函数的输入和输入的输入到assigns定义变量(注意,这是一个"窗口",输入你的信息很明确的开放,这是通常的和按Ctrl + D)。


如果你有可能是在读通过后,这似乎类似于你的。

本案例中的输入参数是一个Python脚本的命令行来后,python script.py input_file。这是_文件输入数据文件包含任何你工作。

所以,你可能想知道如何读取标准输入。有几选项。一个内螺纹联在上面去。如下:

1
2
3
import fileinput
for line in fileinput.input():
    #read data from file

还有其他的方式,当然,但我认为我会离开你它。检查联后的更多信息。

这取决于上下文的输入赋值,可以自动发送到脚本,或你可能必须手动为做详细以上。


import sys,然后"文件"sys.stdin想你想你可以使用像任何其他文件(例如sys.stdin.read()),你没有关闭它。"stdin均值的标准输入。