Board logo

标题: [问题求助] Python怎样删除行内与第一列字符重复的字符? [打印本页]

作者: Python    时间: 2013-6-18 14:20     标题: Python怎样删除行内与第一列字符重复的字符?

文本内容如下:
a b c a d a
s d d d x s a
h j s a s h j h
j d f j a s j k j

要求:删除行内与第一列字符重复的字符,达到这个结果:
a b c d
s d d d x a
h j s a s j
j d f a s k
作者: CrLf    时间: 2013-6-18 21:13

这样行吗:
  1. ts = open("d:\\a.txt")
  2. str = ts.read()
  3. import re
  4. reobj = re.compile(r"^(.)(.*)\1",re.M)
  5. print(reobj.sub(r"\1\2",str))
复制代码

作者: Python    时间: 2013-6-19 20:48

回复 2# CrLf


不对吧

e:\Test>type a.txt
a b c a d a
s d d d x s a
h j s a s h j h
j d f j a s j k j

e:\Test>python test.py
a b c a d
s d d d x  a
h j s a s h j
j d f j a s j k
作者: QIAOXINGXING    时间: 2013-6-20 07:03

  1. c = open('a.txt').readlines()
  2. for a in c:
  3.   a = a[0] + a[1::].replace(' '+a[0],'')
  4.   print a
复制代码

作者: Python    时间: 2013-6-22 09:16

回复 4# QIAOXINGXING


多谢,我改成提前关闭文件的方式了:
  1. f = open('a.txt', 'r')
  2. all = f.readlines()
  3. f.close()
  4. for i in all:
  5.     i = i[0] + i[1::].replace(' '+i[0],'')
  6.     print i,
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2