我不知道为什么在python中将Match()与Regex一起使用时,在每个输出的末尾都会有一个额外的逗号。有什么想法吗?谢谢
我的代码:
import re
yyyyfile = open("yyyy.txt",'w')
text = open('final.txt')
for line in text:
x = re.match('.*?^([0-9][0-9][0-9][0-9])$.*', line)
if x:
print >> yyyyfile, x.groups()
电流输出:
('1573',)
('1595',)
('1929',)
('1933',)
期望输出:
('1573')
('1595')
('1929')
('1933')
我不知道
yyyy.txt
里面是什么,为什么要打印它,但假设final.txt
包含了打开文件时应该使用的文本:解析的工作方式如下:
你没有得到一个额外的逗号,因为你使用匹配。得到这个逗号的原因是打印元组。你可以像这样达到预期的效果
这是因为re.match的groups()的输出是您捕获的所有组。它是一个元组。
改用
x.group(1)
或其他什么相关问题 更多 >
编程相关推荐