man*_*exx 5 python csv localization
我试图在python中创建一个欧洲格式的csv.我已经将分隔符设置为分号
writer = csv.writer(response, delimiter=';', quoting=csv.QUOTE_ALL)
Run Code Online (Sandbox Code Playgroud)
但是,这仍然使用点.作为小数分隔符.使用逗号的正确方法是什么,这对我的语言环境是否正确?我似乎无法找到任何方式在文档中设置它.(我正在使用,并且更愿意坚持使用内置csv模块)
编辑: 这被标记为重复,但链接的问题涉及阅读而不是写作.我找不到有关写作的答案.这些主题(略有但重要)不同.
有点hacky方式,但它是我能想到的最好的:将浮点数转换为字符串并替换.为,:
def localize_floats(row):
return [
str(el).replace('.', ',') if isinstance(el, float) else el
for el in row
]
for row in rows:
writer.writerow(localize_floats(row))
Run Code Online (Sandbox Code Playgroud)
如果您想要更好的本地化处理,我建议您使用babel.numbers包转换所有数字.
| 归档时间: |
|
| 查看次数: |
7917 次 |
| 最近记录: |