2017-04-06 119 views
-2

我想上传所有满足一定条件的csv文件到一个数据库。但是在我的代码开始处遇到错误。python csv文件读取和上传

mypath = "D:\user\01367564\Project Coordinator\Database Trying\all data csv" 
    csv_name_reg = r'^[0-9]{11}_HKG_[0-9]{14}_v2-0.csv$' 

误差低于

File "D:\user\01367564\Project Coordinator\Database Trying\Upload_CA_Manifest.py", line 9 
    mypath = "D:\user\01367564\Project Coordinator\Database Trying\all data csv" 
      ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \uXXXX escape 

你能帮助我吗?谢谢。

回答

0

当前您的路径看起来像意味着包含一个Unicode字符\u...。请注意,在Windows上你有路径的三个选项:

原始字符串

mypath = r"D:\user\01367564\Project Coordinator\Database Trying\all data csv" 

转义反斜线

mypath = "D:\\user\\01367564\\Project Coordinator\\Database Trying\\all data csv" 

斜杠

mypath = "D:/user/01367564/Project Coordinator/Database Trying/all data csv" 
0

在Python中,有一些很酷反斜杠转义。字符串中的“\”以及字符。

一些值得注意的是"\n""\t"这是换行符和制表符。非内建的反斜杠转义将转化为最终字符串中的实际字符。 "\\"将在打印语句期间变成一个“\”。

转义Python认为你的使用是unicode转义。 "\uXXXX"。要解决这个问题,你需要用双反斜杠替换每个反斜杠。 "\\"。所以这个字符串将工作:"D:\\user\\01367564\\Project Coordinator\\Database Trying\\all data csv"

有关Python反斜杠转义的完整列表look at the Python Docs.