gpt4 book ai didi

python - 如何解决二进制模式不采用编码参数

转载 作者:太空狗 更新时间:2023-10-30 02:37:51 26 4
gpt4 key购买 nike

代码:

import nltk
eng_lish= open("C:/Users/Nouros/Desktop/Thesis/english.csv","rb", encoding='utf8').read()
bang_lish= open("C:/Users/Nouros/Desktop/Thesis/banglish.csv","rb", encoding='utf8').read()

问题:

Traceback (most recent call last):
File "C:/Users/Nouros/Desktop/Thesis/nltk_run_copy.py", line 3, in <module>
eng_lish= open("C:/Users/Nouros/Desktop/Thesis/english.csv","rb",encoding="utf-8")
ValueError: binary mode doesn't take an encoding argument

最佳答案

您正在阅读 csv 文件,这些文件是文本 文件。所以你需要编码而不是二进制模式。

所以你不应该使用 rb 打开它们(建议在 Python 2 中使用 csv 模块时这样做,但在其他情况下无关紧要)。

只使用纯文本模式:

open("C:/Users/Nouros/Desktop/Thesis/english.csv","r", encoding='utf8').read()

我更喜欢使用 csv 模块,以避免手动拆分行和列:

import csv
with open(r"C:\Users\Nouros\Desktop\Thesis\english.csv","r", encoding='utf8') as f:
cr = csv.reader(f,delimiter=",") # , is default
rows = list(cr) # create a list of rows for instance

(注意 csv 模块建议在 Python 3 中打开文件进行读取时使用 newline="",但问题实际上是在写入文件时)

关于python - 如何解决二进制模式不采用编码参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48830535/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com