原文: https://pythonspot.com/files-spreadsheets-csv/

电子表格通常会导出 CSV(逗号分隔值)文件,因为它们易于读写。 CSV 文件仅由值,逗号和换行符组成。 该文件称为“逗号分隔值”文件,但您可以使用其他分隔符,例如竖线字符。

用 Python 创建电子表格文件(CSV)

让我们使用 Python 创建 CSV 格式的文件。 我们将使用逗号作为分隔符或除法符。

  1. import csv
  2. with open('persons.csv', 'wb') as csvfile:
  3. filewriter = csv.writer(csvfile, delimiter=',',
  4. quotechar='|', quoting=csv.QUOTE_MINIMAL)
  5. filewriter.writerow(['Name', 'Profession'])
  6. filewriter.writerow(['Derek', 'Software Developer'])
  7. filewriter.writerow(['Steve', 'Software Developer'])
  8. filewriter.writerow(['Paul', 'Manager'])

运行此代码将为我们提供以下内容的filpeople.csv

  1. Name,Profession
  2. Derek,Software Developer
  3. Steve,Software Developer
  4. Paul,Manager

您可以在您喜欢的 Office 程序中导入person.csv文件。

创建并读取 csv - 图1

用 Python 创建的电子表格文件

读取电子表格文件(csv)

如果您创建了 csv 文件,则可以使用以下代码逐行读取文件:

  1. import csv
  2. # open file
  3. with open('persons.csv', 'rb') as f:
  4. reader = csv.reader(f)
  5. # read file row by row
  6. for row in reader:
  7. print row

这将简单地将每一行显示为列表:

  1. ['Name', 'Profession']
  2. ['Derek', 'Software Developer']
  3. ['Steve', 'Software Developer']
  4. ['Paul', 'Manager']

也许您想将其存储到 Python 列表中。 我们从 csv 文件中获取数据,然后将其存储到 Python 列表中。 我们使用if语句跳过标题,因为它不属于列表。 完整代码:

  1. import csv
  2. # create list holders for our data.
  3. names = []
  4. jobs = []
  5. # open file
  6. with open('persons.csv', 'rb') as f:
  7. reader = csv.reader(f)
  8. # read file row by row
  9. rowNr = 0
  10. for row in reader:
  11. # Skip the header row.
  12. if rowNr >= 1:
  13. names.append(row[0])
  14. jobs.append(row[1])
  15. # Increase the row number
  16. rowNr = rowNr + 1
  17. # Print data
  18. print names
  19. print jobs

结果:

  1. ['Derek', 'Steve', 'Paul']
  2. ['Software Developer', 'Software Developer', 'Manager']

大多数电子表格或 Office 程序都可以导出 csv 文件,因此我们建议您创建任何类型的 csv 文件并进行处理 :-)