Skip to content
Related Articles

Related Articles

How to obtain the line number in which given word is present using Python?

View Discussion
Improve Article
Save Article
Like Article
  • Difficulty Level : Medium
  • Last Updated : 20 Aug, 2021

To obtain the line number from the file where the given word is present, create a list in which each index contains the content of each line. To do so follow the below instruction.

First, we need a file to read from. So, create a file inside Jupiter notebook using the magic function as shown below:

%%writefile geeks.txt 
Hello, I am Romy 
I am a content writer at GfG 
Nice to meet you 
Hello, hii all fine

Or you can use any .txt file.

Python3




# READ FILE
df = open("geeks.txt")
 
# read file
read = df.read()
 
# return cursor to
# the beginning
# of the file.
df.seek(0)
read


Output:

'Hello, I am Romy\nI am a content writer at GfG\nNice to meet you\nHello, hii all fine' 
 

Python3




# create empty list
arr = []
 
# count number of
# lines in the file
line = 1
for word in read:
    if word == '\n':
        line += 1
print("Number of lines in file is: ", line)
 
for i in range(line):
    # readline() method,
    # reads one line at
    # a time
    arr.append(df.readline())


Output: 

Number of lines in file is: 4
['Hello, I am Romy\n',
'I am a content writer at GfG\n', 
'Nice to meet you\n',
'Hello, hii all fine']

Python3




# Function that will return
# line in which word is present
def findline(word):
    for i in range(len(arr)):
        if word in arr[i]:
            print(i+1, end=", ")
 
 
findline("Hello")


Output: 

1, 4
Hello is present in 1st and 4th line.

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!