python爬虫 Python列表嵌套字典

来源:互联网  时间:2016/8/26 15:30:24

关于网友提出的“python爬虫 Python列表嵌套字典”问题疑问,本网通过在网上对“python爬虫 Python列表嵌套字典”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题:python爬虫 Python列表嵌套字典
描述:

现有:

list1=['neil','mike','lucy']
list2=['123456','xuiasj==','passWD123']
list3=['www.abc.com','www.mike.org','www.lucy.gov']

需要形成列表:

fin_list = [{'name':'neil','passwd':'123456','url':'www.abc.com'},{'name':'mike','passwd':'xuiasj==','url':'www.mike.org'},{'name':'lucy','passwd':'passWD123','url':'www.lucy.gov'}]

本人python新手,希望大牛指点,如何实现?


解决方案1:

使用Python自带的zip函数

fin_list = []
style = ['name','passwd','url']
fin_list.append(dict(zip(style,list1))) # [{'name':'neil','passwd':'mike','url':'lucy'}]
fin_list.append(dict(zip(style,list2)))
fin_list.append(dict(zip(style,list3)))
解决方案2:

>>> fin_list = []
>>> for i, name in enumerate(list1):
...     d = {}
...     d['name'] = name
...     d['password'] = list2[i]
...     d['url'] = list3[i]
...     fin_list.append(d)
...
>>> fin_list
[{'url': 'www.abc.com', 'password': '123456', 'name': 'neil'}, {'url': 'www.mike.org', 'password': 'xuiasj==', 'name': 'mike'}, {'url': 'www.lucy.gov', 'password': 'passWD123', 'name': 'lucy'}]
解决方案3:

最好能自己先尝试一下。

list0=['name','password','url']
print [dict(zip(list0, l)) for l in zip(list1, list2, list3)]
解决方案4:

提供一个pythonic的写法:

list1 = ['neil', 'mike', 'lucy']
list2 = ['123456', 'xuiasj==', 'passWD123']
list3 = ['www.abc.com', 'www.mike.org', 'www.lucy.gov']
my_list = []
for name, password, url in zip(list1, list2, list3):
    my_list.append({'name': name, 'passwd':password, 'url': url})
print(my_list)

还有一点,题主既然是新手,那么要注意python的代码编写规范(一般遵循的是PEP8),主要是这几天看别人的代码,太乱了...看到题主的

list1=['neil','mike,'lucy']

“=”两边没空格,所以想提示一下。推荐使用IDE,编码不规范它会给你提示的

上一篇(python)App 消息提示后台怎么处理。
下一篇python 爬虫 多线程用queue做队列,消费者线程无法从queue中取出数据。
明星图片
相关文章
《python爬虫 Python列表嵌套字典》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)