您好,登录后才能下订单哦!
这篇文章主要介绍“跟踪数据的Python技巧有哪些”,在日常操作中,相信很多人在跟踪数据的Python技巧有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”跟踪数据的Python技巧有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1、一边执行Loop命令,一边跟踪 假设有一张好友姓名列表。既要遍历列表,又要跟踪计数。该怎么做?使用enumerate即可。
>>>friends = ['Ben', 'Kate', 'Thinh'] >>> for i, item in enumerate(friends): >>> print(f'{i}: {item}') 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) 的生日、最喜欢的食物、肤色以及是否内向,可以这样做:
>>>Kate = Friend('Feb', 'cake', 'pink', True)
此外,如果记不住她的生日,可以调用
>>>Kate.birthday 'Feb'
Python中的类对象可以实例化凯特,但是创建一个Friend类来保存简单信息,很耗费时间。在此情况下,namedtuple是个不错的选择。namedtuple允许记录定义一个可重用对象,确保使用正确的归档名称
fromcollections import namedtuplenamedtupleFriend = 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 来跟踪信息。
到此,关于“跟踪数据的Python技巧有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。