繁体   English   中英

Python SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX 转义

[英]Python SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escap

有谁知道我为什么会收到此 unicode 错误。 我正在尝试从 csv 文件中删除重复项。

import pandas as pd
df = pd.read_csv('new.csv', usecols=['minzoom', 'maxzoom']).drop_duplicates(keep='first').reset_index()
file_name = "C:\Users\kziaj\Desktop\Python Test\newno.csv"
df.to_csv("newno.csv", index=False) # you don't need to set sep in this because to_csv makes it comma delimited.

该错误表明您的文件路径无效。 具体来说,python 将单个反斜杠视为转义字符,而不是路径分隔符,这是 Windows 上 python 编程的常见错误。 为避免这种情况,请使用双反斜杠或原始字符串。

双反斜杠

file_name = "C:\\Users\\kziaj\\Desktop\\Python Test\\newno.csv"

原始字符串

file_name = r"C:\Users\kziaj\Desktop\Python Test\newno.csv"

好像您的 csv 文件中有一些非 ascii 字符。 我试过你的代码,它工作正常。 只需尝试创建一个新的 csv 文件并尝试一下

新的.csv

name,number
aa,1
ab,1
aa,1
ab,2
aa,34
ab,1
ab,25
asd,123
asd,11
aa,1
ab,1
aa,1
ab,2
aa,34
ab,1
ab,25
asd,123
asd,11
aa,1
ab,1
aa,1
ab,2
aa,34
ab,1
ab,25
asd,123
asd,11

然后我运行了你的代码

import pandas as pd
df = pd.read_csv('new.csv').drop_duplicates(keep='first').reset_index()
print(df)
df.to_csv("newno.csv", index=False)

输出结果为

新编号.csv

index,name,number
0,aa,1
1,ab,1
3,ab,2
4,aa,34
6,ab,25
7,asd,123
8,asd,11

暂无
暂无

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

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