How do I read a text file as a string?

Viewed 30507

Below are the codes I have tried to read the text in the text file in a method called check_keyword()

def check_keyword():
    with open(unknown.txt, "r") as text_file:
        unknown = text_file.readlines()

    return unknown

This is how i called the method:

dataanalysis.category_analysis.check_keyword()

The text in the text file:

Hello this is a new text file 

There is no output for the method above :((

5 Answers

text_file.readlines() returns a list of strings containing the lines in the file. If you want only a string, not a list of the lines, use text_file.read() instead.

You also have another problem in your code, you are trying to open unknown.txt, but you should be trying to open 'unknown.txt' (a string with the file name).

You can do this as follows:

with open("foo","r") as f:
    string = f.read()

Instead of text_file.readlines() use text_file.read() which will give you contents of files in string format rather than list.

The code is just a working code based on all the above answers.

def check_keyword():
    with open("unknown.txt", "r") as text_file:
         unknown = text_file.read()

     return unknown

check_keyword()

Actually i have made a whole lib to make that work easy for all

from filemod import reader
data=reader("file.txt"))
print(data)
Related