作者a79621234 (Crooner)
看板Python
标题[问题] 正规表达式 TXT抓取数字
时间Tue Dec 6 22:12:02 2016
Dear All,
小弟是个现在在coursera上自学python 的新手,卡了一题想请教
题目是想从TXT档中 捞出数字
我现在遇到的问题是 假设数字是 123
我捞出来的数字会是 ['1' '2' '3'] 而非['123']
以下是我的code 请大大帮忙 万分感谢
import re
with open('regex_sum_334410.txt','r') as infile:
data = infile.read()
final =[]
for line in data:
y=re.findall('([0-9]+)',line)
final = final +y
print(final)
不论我用 y = re.findall('([0-9]+)',line) 或是
y = re.findall(r'\b\d+\b',line)
都只能得到一位数的数字....
到底是出在什麽问题啊啊阿
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.171.106.114
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1481033525.A.130.html
1F:推 flarehunter: re.findall('[0-9]+', '123 45')是['123', '45']啊 12/06 23:06
2F:→ flarehunter: 你要不要先把line印出来看是什麽东西 12/06 23:07
3F:推 k87001042: line应该是一个字一个字,不是一行。如果要一行一行要写 12/07 00:16
4F:→ k87001042: f.readlines() 12/07 00:16
5F:→ s860134: data是一个字串,你去巡行字串自然是得到字元 12/07 20:51
6F:→ a79621234: 谢谢各位大大指点 让小的 我再试试看 12/07 21:22