本次带着大家去看下一些python的小技巧,方便在实际的开发中,可以给我们带来很多的效率。很多人有的时候只需要获取文章中的固定的一行,那么我知道这一行,我需要怎么样去获取呢。
可能会有人说读取这一行,如果这一行是以什么开头的就读出来,我们还是很简单的去实现的。
其实还有一种办法,就是我知道文件的路径。知道我要取的行数,我就可以用python 直接的把它取出来。我们去看下如何去快速的实现。

  准备beijing.txt

  内容如下:

beijing
shanghai
tianjin

那么我要获取第一行的的文字,那么我可以这么写代码,我们看下代码如何实现

import linecache
with open('study.py',encoding='utf-8') as f:
print(linecache.getline('beijing.txt',1))

首先我们先打开文件,其次我们需要getline 就好了。

运行结果:

python小技巧--linecache和heapq模块学习_堆排序 python已经给我们准备好了linecache这个模块,我们直接用就行。其实这样在一定的时候,可以提高我们的开发的效率。

我们在实际的过程中,我们需要去对数据进行排序,那么我们看看如何快速去实现排序呢,其实对于排序,其实python也给了我们现成的模块-heapq
from heapq import *
def heasort(initi):# 排序
h=[]
for value in initi:
heappush(h,value)#将每一个item进入heap中
return [heappop(h) for i in range(len(h))]
def merge_sort(seq):#堆排序
if len(seq) <= 1:#如果seq的list长度小于1 直接返回
return seq
else:
middle = int(len(seq)/2)
left = merge_sort(seq[:middle])
right = merge_sort(seq[middle:])
return list(merge(left, right))
if __name__ == '__main__':
seq=[1,3,6,2,4]
print(merge_sort(seq))
print(heasort([11,2,31,4]))

我们看下执行结果

python小技巧--linecache和heapq模块学习_后端_02

其实很多的时候,我们可以利用官方给的小模块,简单快捷的去实现我们实际快速开发需求。