Python Forum
Thread Rating:
  • 3 Vote(s) - 2.67 Average
  • 1
  • 2
  • 3
  • 4
  • 5
reading data from a file
#1
Hi,

I have this function, but I can't get it to work:
class DataTest( object ):
    def testReadData( self ):
        path = '/home/pi/Desktop/test.txt'
        with open(path, 'r') as f:
            f.read()
Yet when I try to get the text from the file from outside the class:
test = DataTest.testReadData(self)
print(test)
It returns None

What am I doing wrong please?
Reply
#2
Well, that should be giving an error, since self is undefined. And even if it was defined, you never return anything from the function, so the result will always be None.

But anyway, instantiate the class first:
test = DataTest()
data = test.testReadData()
print(data)
Reply
#3
class DataTest(object):
    def testReadData(self):
        path = '/home/pi/Desktop/test.txt'
        with open(path, 'r') as f:
            return f.read()
data = DataTest()
file = data.testReadData()
"As they say in Mexico 'dosvidaniya'. That makes two vidaniyas."
https://freedns.afraid.org
Reply
#4
@ nilamo thank you that makes a bit more sense to me now. I was very tired last night and now it's a little more obvious. Even though I have been learning OOP now for 8 months solidly, the whole self thing is still extremely confusing, I'm hoping it will at some point start to make sense, as the only time I know to or to not use self is when an error message says self is required or self is undefined.

@ Wavic, thanks for correcting my code, I forgot one more thing from the code and that was to assign a variable for f.read(), as the code kept returning the object in memory, not the dictionary that was in the file, so I now have this working and this is the code that I used:
class DataTest(object):
    def testReadData(self):
        path = '/home/pi/Desktop/test.txt'
        with open(path, 'r') as f:
            data = f.read()    # <--- this line is the difference between the text and the location of the text in memory
            return data
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
Sad problems with reading csv file. MassiJames 3 559 Nov-16-2023, 03:41 PM
Last Post: snippsat
  Reading a file name fron a folder on my desktop Fiona 4 851 Aug-23-2023, 11:11 AM
Last Post: Axel_Erfurt
  Reading data from excel file –> process it >>then write to another excel output file Jennifer_Jone 0 1,046 Mar-14-2023, 07:59 PM
Last Post: Jennifer_Jone
  Reading a file JonWayn 3 1,058 Dec-30-2022, 10:18 AM
Last Post: ibreeden
  Reading Specific Rows In a CSV File finndude 3 940 Dec-13-2022, 03:19 PM
Last Post: finndude
  Excel file reading problem max70990 1 865 Dec-11-2022, 07:00 PM
Last Post: deanhystad
  Reading All The RAW Data Inside a PDF NBAComputerMan 4 1,274 Nov-30-2022, 10:54 PM
Last Post: Larz60+
  Replace columns indexes reading a XSLX file Larry1888 2 951 Nov-18-2022, 10:16 PM
Last Post: Pedroski55
  Reading Data from JSON tpolim008 2 1,031 Sep-27-2022, 06:34 PM
Last Post: Larz60+
  Failing reading a file and cannot exit it... tester_V 8 1,754 Aug-19-2022, 10:27 PM
Last Post: tester_V

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020