(数据:http://paste.ubuntu.com/7605667/)
我试图从一个txt文件创建一个json对象,并将其打印为python dict的列表。我使用的代码是:
records=[json.loads(line) for line in open(path)]
records[0]
这给了我:
^{pr2}$但是当我使用pprint时,我得到了期望的结果:
pprint(records[0])
{u'a': u'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.78 Safari/535.11',
u'al': u'en-US,en;q=0.8',
u'c': u'US',
u'cy': u'Danvers',
u'g': u'A6qOVH',
u'gr': u'MA',
u'h': u'wfLQtf',
u'hc': 1331822918,
u'hh': u'1.usa.gov',
u'l': u'orofrog',
u'll': [42.576698, -70.954903],
u'nk': 1,
u'r': u'http://www.facebook.com/l/7AQEFzjSi/1.usa.gov/wfLQtf',
u't': 1331923247,
u'tz': u'America/New_York',
u'u': u'http://www.ncbi.nlm.nih.gov/pubmed/22415991'}
这怎么办json.loads?我尝试使用“records[0].split(',')”,但始终收到错误消息:
AttributeError: 'dict' object has no attribute 'split'
漂亮的打印输出不是一个dict列表;它与常规打印的dict是相同的,只是显示了排序的键和每个键值对。在
如果你想像你所说的那样打印一个dicts列表,你可能想要
如果您想遍历每个dict的键值对,可以循环它们的
^{pr2}$iteritems()
:如果你对自己想做的事情没有一个明确的理解,那么第一步就是找出答案。在
相关问题 更多 >
编程相关推荐