>>>friends = [ Ben , Kate , Thinh ]
for i, item in enumerate(friends):
f {i}: {item} ) print(
0: Ben
1: Kate
2: Thinh
或者简单运用dictionarycomprehension
>>>{i: friends[i] for i in range(len(friends))}
{0: Ben , 1: Kate , 2: Thinh }
2、更新DictionaryItems函数:假如正在使用dictionary函数以跟踪首句中的单词及字数。
sent1 ={ love : 1, hate : 3
但进行到第二句时,你想要用新语句更新先前的dictionary函数。
sent2 = { love :2, flower : 1}
更新的单词包如下:
{ love :3, hate : 3, flower : 1}
该怎么做?要是有些工具能助你轻松完成,岂不是很好?如果正好需要这类工具,collections.Counter正中下怀。collections.Counter 这一类允许集合中多个元素的存在
fromcollections import Counter
bag_words = Counter()sent1 = { love : 1, hate : 3}bag_words.update(sent1)sent2= { love : 2, flower : 1}bag_words.update(sent2)bag_words
结果:
Counter({ love :3, hate : 3, flower : 1})
太好了!现在,当你从其他语句中收集到更多信息时,便可以很容易地更新单词包。可以运用len找出语句中有多少唯一单词,
>len(bag_words)
3
或者,可以运用 sum计算语句中的单词总量,
>sum(bag_words.values())
7
3、运用Namedtuple定义可重用对象 想跟踪有关朋友的信息列表,为他们的生日做准备。由于暂时无可用信息,因此首先需要创建一个占位符,以便之后在其中输入信息。如果要记录凯特(Kate) 的生日、最喜欢的食物、肤色以及是否内向,可以这样做:
Feb , cake , pink , True) >Kate = Friend(
此外,如果记不住她的生日,可以调用
>Kate.birthday
Feb
Python中的类对象可以实例化凯特,但是创建一个Friend类来保存简单信息,很耗费时间。在此情况下,namedtuple是个不错的选择。namedtuple允许记录定义一个可重用对象,确保使用正确的归档名称
fromcollections import namedtupleFriend = namedtuple( Friend , birthday foodcolor introvert )Kate = Friend( Feb , cake , pink , True)Ben = Friend( Jan , fish , red , False)
显示有关凯特的信息:
>Kate
Friend(birthday= Feb , food= cake , color= pink , introvert=True)
如果想知道本 (Ben) 是内向还是外向,可以调用
>Ben.introvert
False
使用 nametuples , 用户可以轻松地重用同一对象以实例化新信息。 认真阅读并实践,你将学会运用enumerate、集合推导(set comprehension)、Counter 和namedtuple 来跟踪信息。希望本文能丰富数据科学工具包,为大家提供更多有用的知识。https://mp.weixin.qq.com/s/GvP6I9l3oLkmj1WrDVDBiw