Reputation: 40982
We have this good answer for how to read stdin.
stdin
?print
is like stdout
?I ask it cause I saw this order in facebook demo puzzle:
NOTE: You need to write the full code taking all inputs are from stdin and outputs to stdout If you are using "Java", the classname is "Solution"
Upvotes: 2
Views: 2383
Reputation: 39893
When you are reading from stdin
, you have three basic options:
type stuff manually:
$ python hello.py
asfasfasf
asfasfasfasfasf
<TYPE CONTROL-D TO END STREAM>
Using <
:
$ python hello.py < inputfile.txt
Using the output from a previous command:
$ cat inputfile.txt | grep oranges | python hello.py
All three of these will give you input via stdin
.
After editing your question, you are no longer asking the same question. Here is the answer to your new questions:
sys.stdin = open('inputfile.txt')
to have the input file look like stdin. Make sure this is what you want. From your homework prompt, it sounds like my above solution is what you want.print
writes to stdout.Upvotes: 6
Reputation: 993163
If you want to run code so that a file is read from stdin (instead of from an interactive terminal), then use redirection.
python program.py <input_file.txt
The <
means the named file will be attached to stdin when the script is run. This syntax is the same on Windows, MacOS, and Unix-like platforms.
Upvotes: 2