分类: 编程天地

13 篇文章

Python学习记录14-对不支持排序的原生对象进行比较
本节的内容是我们要比较2个类型相同的对象,但是他们并不支持原生的比较操作。所以就需要我们来指定要比较的条件来进行排序。 我们直接上代码from operator import attrgetter class People: def __init__(self,uid): self.uid = uid def __repr__(self): ret…
Python学习记录13-通过某个关键字排序一个字典列表
本期的内容是有一个字典列表, 我想通过里面指定字典的一个key进行对这个字典列表进行排序。假设有以下的字典列表,我们想通过对这个列表里的字典的特定key来进行排序,可以使用operator的itemgetter来轻松实现。以下是根据fname和uid排序的代码:from operator import itemgetter rows = [ {'f…
Python学习记录11-命名切片
本节的内容是命名切片。也就是给切片进行命名。有以下场景。假设你的代码要处理的内容包含了大量无法清晰明了的硬编码切片,你想从中获取某个固定位置的字段或者值并且想简化代码的格式。你要怎么处理。话不多说,我们直接看代码示例 x = 'hausdjkxkvjxcjkvxcjkvtestxhu6ssfsfsasf6hu11' print(x[21:25]) …
Python学习记录10-删除序列相同元素并保持顺序
本节的内容是怎样在一个序列上面保持元素顺序的同时消除重复的值?如果我们想消除一个队列里的重复元素,那么可以利用集合的特性来实现,比如以下代码,但是这样的代价是重复的元素去掉了。但是列表里的元素不是按顺序排列了。 请注意set会自动排序,我这里期望的顺序是3,1,2,23 按照元素的先来后到展示。a = [3,1,1,2,3,1,1,23] prin…
Python学习记录09-查找两个字典的相同点
本节的内容是查找2个字典所拥有的共同元素。比如说。2个字典拥有的相同的key 。或者2个字典所拥有的相同的key,value。以下有2个字典,内容是:d1 = { "A":"a", "B":"b", "C":"cc" } d2 =…
Python学习记录07-字典排序
本文的内容是对字典进行排序。Python 的字典中本身是无序的,没有这个说法的。常见的我们对字典进行排序,一般有通过sorted函数,用key来排序,或者是通过value来排序,以下是示例的代码。d1 ={} d1['cat '] = 9 d1['dog '] = 6 d1['fish '] = 3 d1['bird '] = 1 print(so…
Python学习记录05-实现一个优先级队列
本节的内容是要实现一个优先级队列,并且当这个队列进行POP操作的时候,总是先弹出优先级最高的元素。今天我们就跟着文档一起学习一下。文档使用了heapq模块来实现了一个优先级队列,我们由简到繁。来慢慢分析。这里先定义一个一会要按优先级排序的 Item。然后用它的2个对象进行比较,发现是会报错的。因为不支持比较。class Item: def __in…
Python学习记录04-查找最大或者最小的X个元素
在一个列表或者集合里,如果我们想要查找其中最大的值和最小的值。是比较简单的,我们可以使用min()函数和max()函数。如以下代码tlist = [1,20,-4,100] print("最大值:", max(tlist), "最小值:", min(tlist)) #最大值: 100 最小值: -4 tset…