Skip to content
Related Articles

Related Articles

Take input from stdin in Python

Improve Article
Save Article
Like Article
  • Difficulty Level : Easy
  • Last Updated : 01 Sep, 2021

The sys module in python helps us to access the variables maintained by the interpreter. It also provides functions to interact with the interpreter. To use sys in Python, we firstly import sys 
 

import sys

There are a number of ways in which we can take input from stdin in Python. 

  • sys.stdin
  • input()
  • fileinput.input()

 

  • Using sys.stdin: sys.stdin can be used to get input from the command line directly. It used is for standard input. It internally calls the input() method. It, also, automatically adds ‘\n’ after each sentence.
    Example:

Python3




import sys
 
 
for line in sys.stdin:
    if 'q' == line.rstrip():
        break
    print(f'Input : {line}')
 
print("Exit")

Output 
 

  • Using input(): input() can be used to take input from the user while executing the program and also in the middle of the execution.
    Example:
     

Python3




# this accepts the user's input
# and stores in inp
inp = input("Type anything")
 
# prints inp
print(inp)

Output:
 

  • Using fileinput.input(): If we want to read more that one file at a time, we use fileinput.input() . There are two ways to use fileinput.input(). To use this method, first we need to import fileinput.
    1st method : 
    Here, we pass the name of the files as a tuple in the “files” argument. Then we loop over each file to read it.
     

Python3




import fileinput
 
 
with fileinput.input(files = ('sample.txt', 'no.txt')) as f:
    for line in f:
        print(line)

Output: 

  • 2nd method : 
    Here, we pass the file name a sys argument in the command line. 

Python3




import fileinput
 
 
for f in fileinput.input():
    print(f)

Output: 


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!