【问题标题】:how do I import an array containing dictionary from a text file?如何从文本文件中导入包含字典的数组?
【发布时间】:2015-12-24 16:31:27
【问题描述】:

我有一个包含 cookie 的文本文件。它看起来像这样:

[{"key":"value", "key":"value", "key":"value"},
 {"key":"value", "key":"value", "key":"value"},
 {"key":"value", "key":"value", "key":"value"},
 {"key":"value", "key":"value", "key":"value"}]

我将它存储到这样的字符串变量中:

with open ('example.txt', "r") as myfile:
    cookie = myfile.read().replace('\n', '')

我无法将其转换为一个数组,其中每个元素都作为字典。 我尝试过cookie2 = cookie.split(',')cookie2 = cookie.split('},{'),但你得到了明显的问题:它会破坏字典。

【问题讨论】:

    标签: python arrays python-3.x dictionary


    【解决方案1】:

    这看起来像json 数据,你可以使用json 模块来解析它。有点像 -

    import json
    with open('<filename>') as f:
        data = json.load(f)
    

    演示 -

    文件-

    [{"key1":"value", "key2":"value", "key3":"value"},{"key1":"value", 
    "key2":"value", "key3":"value"},{"key1":"value", "key2":"value", 
    "key3":"value"},{"key1":"value", "key2":"value", "key3":"value"}]
    

    代码-

    >>> import json
    >>> with open('a.txt','r') as f:
    ...     pprint.pprint(json.load(f))
    ...
    [{'key1': 'value', 'key2': 'value', 'key3': 'value'},
     {'key1': 'value', 'key2': 'value', 'key3': 'value'},
     {'key1': 'value', 'key2': 'value', 'key3': 'value'},
     {'key1': 'value', 'key2': 'value', 'key3': 'value'}]
    

    【讨论】:

    • 很高兴我们能提供帮助。我还想请求您接受一个答案,通过单击该答案左侧的勾号,这将对社区有所帮助。
    【解决方案2】:

    由于您的输入似乎格式化为 JSON,请查看 json 模块。它会为你解析:https://docs.python.org/3.4/library/json.html

    import json
    with open(filename,'r') as f:
        data = json.load(f)
    

    【讨论】:

    • 感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-22
    • 1970-01-01
    • 2020-02-05
    • 2018-12-01
    • 1970-01-01
    相关资源
    最近更新 更多