如何从文件中读取 python 中的数组列表并将其放入数组列表中?

我有一个存储在这样的文本文件中的数组列表
[array([21,25,20]),array([12,24,23]),array([41,23,22])]
,我想读取该文件并将其也放入列表中,因为我有一个只接受列表的函数。
这里的想法是数据作为字符串存储在文件中。
当我尝试使用 list() 时,它会放入引号,但我无法按照我想要的方式读取数据。

潇湘沐
浏览 156回答 2
2回答

慕森卡

这是写入文件import picklewith open('dataset_faces.dat', 'wb') as f:    pickle.dump(encodeTest, f)从文件中读取import picklewith open('dataset_faces.dat', 'rb') as f:    all_face_encodings = pickle.load(f)

杨__羊羊

您可以使用eval(https://docs.python.org/3/library/functions.html#eva)来评估您读入Python数据的文本。确保您信任数据源!除此之外,您显示的当前数据不是有效的 Python,因为缺少类型代码 如果您知道类型代码,则必须阅读文本、解析数据、手动添加类型代码,然后对其进行评估。更新 - 关于上述数据的有效性❯ python3Python 3.6.9 (default, Jul 17 2020, 12:50:27) [GCC 8.4.0] on linuxType "help", "copyright", "credits" or "license" for more information.>>> from array import array>>> [array([21,25,20]),array([12,24,23]),array([41,23,22])]Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: array() argument 1 must be a unicode character, not list>>> ...有效的是例如...>>> [array("i",[21,25,20]),array("i",[12,24,23]),array("i",[41,23,22])][array('i', [21, 25, 20]), array('i', [12, 24, 23]), array('i', [41, 23, 22])]>>> 
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python