我有一個包,我用於我的研究,有一個類的方法,寫入一些信息,但只寫入信息到一個文件(即該方法需要一個文件對象作爲參數和作爲唯一的參數) 。但是,我需要我的代碼中的特定信息,而不是文件中。用Python寫一個文件實際上是一個變量?
我目前的解決方案是讓該方法將信息寫入文件,然後打開該文件並使用基本的I/O函數來讀取信息。
我想知道,但是,有沒有辦法欺騙該方法,使其認爲它寫入文件時,它實際上是寫入變量或列表或其他東西?換句話說,有沒有辦法讓一個文件對象實際上指向一個變量/列表/數組/無論在代碼中而不是實際的文件?
電流:
with open('file.txt','w') as f:
method.write_info(f)
with open('file.txt','r') as f:
info = f.readlines()
我想要(或多或少,我只是用我很熟悉一樣打開文件的語法):
with open(<some sort of variable>) as var_file:
method.write_info(var_file)
#Then do whatever I want with the information
print <some sort of variable>
注:我m使用Python 2.7
也許讓繼承包含該功能你原來的班級一個新的類,並重寫/特別重寫功能(更換寫入文件的一部分寫入到變量)在你的新班級? – xbb