作者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://www.ptt.cc/bbs/Python/M.1481033525.A.130.html
推 flarehunter: re.findall('[0-9]+', '123 45')是['123', '45']啊 12/06 23:06
→ flarehunter: 你要不要先把line印出來看是什麼東西 12/06 23:07
推 k87001042: line應該是一個字一個字,不是一行。如果要一行一行要寫 12/07 00:16
→ k87001042: f.readlines() 12/07 00:16
→ s860134: data是一個字串,你去巡行字串自然是得到字元 12/07 20:51
→ a79621234: 謝謝各位大大指點 讓小的 我再試試看 12/07 21:22