【发布时间】:2016-03-16 21:53:33
【问题描述】:
我已经在 python 中使用 split 完成了一些基本的字符串解析,我目前有这种类型的输出:
{"repositories":["docker1","myImage","repo123"]}
“存储库”是有保证的,但列表可能有数百个。我的第一个想法是从 [17:-2] 开始,它会留下一个逗号分隔的引用单词列表,然后用逗号分割成一个列表,然后取每个单词 [1:-1]。
有没有更“优雅”的解决方案?
【问题讨论】:
我已经在 python 中使用 split 完成了一些基本的字符串解析,我目前有这种类型的输出:
{"repositories":["docker1","myImage","repo123"]}
“存储库”是有保证的,但列表可能有数百个。我的第一个想法是从 [17:-2] 开始,它会留下一个逗号分隔的引用单词列表,然后用逗号分割成一个列表,然后取每个单词 [1:-1]。
有没有更“优雅”的解决方案?
【问题讨论】:
这看起来像 JSON!假设它是......
>>> import json
>>> a = json.loads('{"repositories":["docker1","myImage","repo123"]}')
>>> a['repositories']
["docker1","myImage","repo123"] # A python list, not a string
如果是保证是JSON,可以使用上面的方法将字符串直接转换成Python对象,省去任何解析的需要。
【讨论】: