繁体   English   中英

python 脚本在我的电脑上正常,但在另一台电脑上不行

[英]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()

CMD 中的错误: 在此处输入图像描述

问题很可能是您使用不同的操作系统,而open() function 默认使用您的本地系统编码。 如果您在打开文件时指定 UTF-8 编码,您将确保无论脚本用户使用哪个操作系统,文本都以相同的方式编码。

像这样指定编码:

file = open(file_name, "r", encoding="utf-8")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM