こんなケース
data.txt
[
"a",
"b",
"c"
]
このようなリスト形式のデータを持っているdata.txtがあります
このdata.txtを普通に読み込んでも、文字として扱われてしまいます
ここで、このテキストをlist型で取得するにはどうすれば良いでしょうか?
これでも一応出来るけど……
解法の一つとしてeval
関数が使えます
しかし、皆さんご存知の通りこいつは任意コードが実行できてしまうので大変よろしくないです
個人的最適解
恐らく安全な方法はjson.load
を使うことです
json形式のデータではありませんが、なんと対応してくれるんですね
import json
with open("data.txt", "r") as f:
data = json.load(f)
print(type(data)) # -> <class 'list'>
print(data[0]) # -> a
print(data[1]) # -> b
print(data[2]) # -> c