gpt4 book ai didi

Python - 处理 Unicode(俄语)Txt 文件

转载 作者:行者123 更新时间:2023-12-01 05:44:06 26 4
gpt4 key购买 nike

过去几个小时我一直对俄语制表符分隔的 txt 文件感到困惑。其外观如下:

CODE    AD_GROUP    KEYWORD MATCH_TYPE

009966 Автостраховка автостраховка Broad
009965 Автостраховка страховкаавто Broad
009964 Автостраховка страховка автомобиля Broad

目标是解析 txt 文件并暂时单独打印每个关键字。

到目前为止我已经:

f = open("struct.txt",encoding="UTF-8",errors='strict')

for line in f:
vals = line.split("\t")
print(vals[2])

f.close()

但我不断收到以下错误:

UnicodeDecodeError:“utf-8”编解码器无法解码位置 0 中的字节 0xff:起始字节无效

另外,如果我执行 len(vals) 来查看每个列表的长度,我会得到以下结果: 4 1 4 1 这可能意味着 split("\") 不起作用?

我使用的是Python3.3和Mac。

最后,我不认为 Mac 上的命令行不显示西里尔字符有问题 - 它之前已经做到了,没有出现任何问题(西方 Windows 版本似乎在这方面失败了)。

请让我知道我做错了什么。

谢谢!

最佳答案

使用此代码(Python2.7)

f = open("struct.txt")

for line in f:
vals = [item for item in line.strip().split("\t") if item != '']
if len(vals):
print(vals[2])

f.close()

您的源代码(我对其进行了编辑以确保它有选项卡)我得到以下输出:

> python so_16703270.py
KEYWORD
автостраховка
страховкаавто
страховка автомобиля

您确定文件中整个文件都有制表符,而某些地方没有空格吗?

关于Python - 处理 Unicode(俄语)Txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16703270/

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