作为标题,我是网络爬虫diigo,并且有很多列表,我成为了set()的列表。就像这样:
data = [ ['spanish', 'web2.0', 'e-learning', 'education', 'social', 'spain', 'tools', 'learning', 'google', 'e-learning2.0'], ['education', 'technology', 'learning', 'classroom', 'students', 'web2.0'], ['education'], ['technology'] ]
做点什么计算
search_table = {}
for i, tag_list in enumerate(data):
for tag in tag_list:
if tag not in search_table:
search_table[tag] = set()
search_table[tag].add(i)
# How many people have `technology`?
print(len(search_table["technology"]))
# How many people have `education`?
print(len(search_table["education"]))
# How many people have both `technology`, `education`?
print(len(search_table["technology"] & search_table["education"]))
数据有很多标签,我想这样做 - > print(len(search_table [“技术”]))< - 技术可以自动改变下一个世界喜欢教室。
我真的不知道怎么做,我只想是
for u in user_data:
print u
但是如何添加要打印的世界(len(search_table [“ u ”]))
真诚的鲍勃
答案 0 :(得分:1)
我想我明白你的意思。你快到了那里:
user_data = ["technology", "classroom"]
for u in user_data:
print(len(search_table[u]))
将首先打印search_table["technology"]
中的项目数,然后打印search_table["classroom"]
中的项目数。
答案 1 :(得分:0)
当您使用列表时,您可以使用数字访问列表中的元素,这样您就不需要更改单词' code'。你只需要这样访问它:
>>> user_data = ['code','java','learn']
>>> user_data[0]
'code'
>>>
通常情况下,当您访问user_data [" code"]等元素时,因为您正在访问字典中的键,如下所示:
>>> user_data = {'code':'java, python, ruby'}
>>> user_data['code']
'java, python, ruby'
根据您存储信息的方式,将影响您访问该存储信息的方式。考虑到您拥有用户数据,您可能希望将它们存储在以下列表中的词典中:
[
{'name': 'bob', 'code': 'java, python', 'school':'StackOU'},
{'name': 'bobina', ...
]
您可以访问bob的编码技能,例如:
>>> user_data = [
... {'name': 'bob', 'code': 'java, python', 'school':'StackOU'},
... ]
>>> user_data[0]['code']
'java, python'