簡體   English   中英

Python-CSV,可將文本文件中的數據提取到CSV文件中

[英]Python - CSV to extract data from text file into a CSV file

我的文本文件格式不完全,但是指定了列。

Code            Description          Unit          Retail
1000MADB90      Taupe 2X2            12X12         5.90
1002MOPAS       Grey Stilato         12X12         12.09

然后是一些垃圾,然后又是

      Code            Description          Unit        Retail
    1050QADD         Black 2X2            12X12         2.12
    1002MOPAS       Red velvet            12X12         1.11

我需要能夠將其格式化為csv文件,並且前后沒有垃圾。 因此,我想將列名和信息保留在它們之后,直到遇到垃圾並跳到以Code開頭的另一列。 我已經嘗試了一些(准確地說是12個)在stackeroverflow上找到的示例,但由於將其格式化為Excel(csv)之類的格式,因此似乎無法獲取。 此外,文本文件中的列的大小和對齊方式也有所不同(請注意,不重要)

我不是程序員,但我正在尋找一種將目錄轉換為POS系統中輸入的簡單方法。 感謝您的幫助

一種簡單的方法(只要您知道識別垃圾的簡單方法):

with open('originalfile.csv','r') as f:
  with open('newfile.csv','w') as new_file:
    for row in f:
      if not is_junk(row):
        new_file.write(row)


def is_junk(row):
  return not row.strip() or ( not ( ("Retail" in row ) or is_float(row.split()[-1]) ) )

def is_float(str):
  try:
    float(str)
    return True
  except ValueError:
    return False

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM