[英]python script ok on my pc but not on another
一位前同事很久以前创建了一个脚本,其中包括一个名为 Python 文件的文件,该文件从两个 CSV 文件中检索信息并将它们合并为一个文件。
这个脚本很好用,不用担心,我需要对其进行一些更改,只需几个.replaces
。 在我的电脑上执行非常顺利,但它不适用于我为之进行这些修改的人,CMD 中有一条错误消息,并且在 Python 上不太擅长我阻止,我当然尝试了研究和一些修改,没有成功,每次结果都是发现最终文件是空的,而不是包含所有数据。
突然它是.replace
阻塞,在我的电脑上不用担心,他的错误并且所有单词都没有被替换。
我的 Python 版本是 2.7.14 而他的版本是 3.8.6,我想问题就在那里,但我不知道要改变什么。
我尝试了这种方法但没有成功: UnicodeEncodeError: 'charmap' codec can't encode characters
Python 文件:
#coding:utf-8
import sys
file_name=sys.argv[1]
file=open(file_name,"r")
file = ''.join([i for i in file]) \
.replace("clôturée", "Clôturée").replace(",",".").replace("Entitées", "").replace("Tous", "")
output=open(sys.argv[1],"w")
output.writelines(file)
output.close()
问题很可能是您使用不同的操作系统,而open()
function 默认使用您的本地系统编码。 如果您在打开文件时指定 UTF-8 编码,您将确保无论脚本用户使用哪个操作系统,文本都以相同的方式编码。
像这样指定编码:
file = open(file_name, "r", encoding="utf-8")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.