看板 Python 關於我們 聯絡資訊
已完成如下 有更好方法嗎 layst = [2,6,13,21,28,39,50,61,72,83,94,105,116,127,134,135,136,143,150,157,164, 175,182] laylg = [6,13,21,28,39,50,61,72,83,94,105,116,127,134,135,136,143,150,157,164,17 5,182,201] clast = [2,13,17,21,28,35,42,49,60,61,76,87,94,101,106] clalg = [13,17,21,28,35,42,49,60,61,76,87,94,101,106,201] eb =oe.readlines() blay = [] bfin = [] clay = [] cfin = [] for i in range(len(eb)): if eb[i].startswith("B"): for k , l in zip(layst,laylg): try: blay.append(int(eb[i][k-1:l-1])) except: blay.append(eb[i][k-1:l-1]) ff = blay.copy() bfin.append(ff) blay.clear() elif eb[i].startswith("C"): for m , n in zip(clast,clalg): try: clay.append(int(eb[i][m-1:n-1])) except: clay.append(eb[i][m-1:n-1]) ffc = clay.copy() cfin.append(ffc) clay.clear() rounders (望仔) 看板: Python 標題: [問題] 處理文件檔案txt->excel 時間: Tue May 19 21:36:32 2020 剛開始學Python,現行目標是想朝向自動化電腦操作 現在要將無分隔符號的文字檔 依每行開始位置及長度拆分為不同欄位在轉到Excel檔 今天用seed和readline()試不出來 還是要用pandas做得到呢? 文字檔如 aaa100bb633777555 bbb233bb777666555 開始1 4 7 9 12   長度3 3 2 3 6 希望自動轉成excel 人名   金額   班級  積分   累計積分 aaa 100 bb 633 777555 bbb 233 bb 777 666555 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.189.27 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1589895394.A.3F7.html
ctr1: 看你全型的英文豆頁很痛05/19 22:20
OrzOGC: 先把英數都用半型再說05/19 22:41
TitanEric: regex05/19 23:15
moodoa3583: 如果每一條字串開始切的起點和長度都相同,那用[:]切05/20 00:30
moodoa3583: 應該就可以了,切完後用with open開一個檔存入就好05/20 00:30
davidwales: 我覺得用awk 或是sed會簡單很多05/20 10:09
TitanEric: 樓上也是好方法05/20 10:38
※ 編輯: rounders (220.133.189.27 臺灣), 05/20/2020 19:44:51 ※ 編輯: rounders (220.133.189.27 臺灣), 05/25/2020 23:23:39 ※ 編輯: rounders (220.133.189.27 臺灣), 05/25/2020 23:34:23 ※ 編輯: rounders (39.12.165.12 臺灣), 05/29/2020 17:51:00