クラス Task への呼び出しを .dat ファイルの配列に格納しています。このファイルを読み込んで、クラス呼び出しを再構築したいと思います。
現在使用しているクラスは次のとおりです。
class Task:
def __init__(self, name, timespent):
self.name = name
self.timespent = timespent
def __repr__(self):
return repr('Task("%s",%s)'%(self.name, self.timespent))
ファイルからの読み取りは次のとおりです。
task_list = []
with open("task_list2.dat", "r") as file:
task_list = eval(file.readline())
ファイルへの書き込みは次のとおりです。
with open("task_list2.dat", "w") as outFile:
print(repr(task_list), file = outFile)
ファイルの内容は次のとおりです。
['Task("class",20)']
「クラス」はタスクの名前です。
問題は 'Task("class",20)' を囲む一重引用符に関係していることは理解していますが、それらを取り除く方法はわかりません。私が得るエラーメッセージは、「strオブジェクトには属性 'name'がありません」という行に沿って何かを言います
次回ファイルを読み取るときにクラスを再構築できるように、これらの引用符を削除するにはどうすればよいですか?