初学者求助:使用python进行文本搜索
现在有一个文本,内容如下:
>>cat a.txt
a=1,befc
a=11,azxv
a=2,azvf
a=231,fffe
a=24,zefg
需求:
写一完整python程序对其字符串进行排序处理,排序结果如下:
a=1,befc
a=2,azvf
a=11,azxv
a=24,zefg
a=231,fffe
先自己顶一个^_^
这样就可以了
Python code:
import re
file_a = open('a.txt')
pattern = re.compile('a=(\d+),(\w+)')
dict_1 = {}
for line in file_a:
s = pattern.match(line).group(1)
dict_1[int(s)] = line
list_1 = dict_1.keys()
list_1.sort()
for i in list_1:
print dict_1[i]
def my_cmp(a, b ):
a_value = int(a.lstrip('a=').split(',')[0])
b_value = int(b.lstrip('a=').split(',')[0])
return cmp(a_value, b_value)
lines = [ l.strip() for l in open('t.txt') if l.strip() ]
for l in sorted(lines, cmp = my_cmp):
print l
大型文件可能会挂掉
大型文件
http://code.activestate.com/recipes/576755/
多谢各位大侠,按二楼、三楼的code已经验证okay,再请教下:
如果文本变成多段,每段通过/*CSDN*/分开,中间有空行。段的数量实际情况很多,并且每段数字前的索引相同,但不同段间的索引不同)
>>cat a.t
相关问答:
大家好,我是一个新手,刚开始学python,但是刚开始的helloworld都没法打印,让我很无奈。
我的python安装路径为f:\python31。在path中也设置对了,在windows下运行是这样显示的,希望各位前辈指点一下。谢谢
Pyth ......
我现在有一个需求是这样的
我有2个类
class A
{
public:
int val;
}
class B
{
public:
A a
}
现在在脚本中只能
b.a.val = 1
我在python中想使用
b.a = 1
......
>>> x=-1
>>> if x>0:
print ('11')
>>> else:
SyntaxError: invalid syntax (<pyshell#20>, line 1)
网上搜的也是:
>>> x=int(input("Please ent ......
python的PIL库自带的方法只能进行矩形的切割,如果我有了一个多边形各个顶点的坐标,如何对现有的图片按照这个多边形进行切割呢?
不一定要用PIL库,任何能实现这个功能的方法都行。
图片切割的js不是很多吗?
......