参数 newline='' 在 open 函数中起什么作用?

Hmm*_*mmm 12 python

我正在 Codecademy 学习 Python,他们正在讨论如何使用该open()函数处理 CSV 文件。我无法真正理解该参数newline=''对代码意味着什么。

import csv

with open('addresses.csv', newline='') as addresses_csv:
  address_reader = csv.DictReader(addresses_csv, delimiter=';')
  for row in address_reader:
    print(row['Address'])
Run Code Online (Sandbox Code Playgroud)

小智 12

在您的csv.DictReader函数中,您迭代 in 中的行addresses.csv并将每一行映射到dict. 检查文件中带引号的字段csv,并查看是否有任何用于结束行的转义序列- 请注意当您包含代码中所示的参数时与不包含参数时'\r\n'会发生什么。newline不包含该newline参数可能会添加您不想要的额外行结尾。包含该newline参数允许 csv 模块自行处理行结尾 - 复制 csv 中定义的格式。