今天用python写了个远程上传文件的代码,运行的时候发现报了 如下错误:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
我的代码如下:
t = paramiko.Transport((hostname, port))
t.connect(username=username, password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.put('C:\Users\Administrator\Desktop\test.xls', '/home/python/Desktop/test.xls')
t.close()
后来检查发现,在Python中‘\’是转义符,'\u'表示其后是unicode编码,因此'\User'在这里会报错,在字符串前面加个r表示就可以了
修改如下:
sftp.put(r'C:\Users\Administrator\Desktop\test.xls', '/home/python/Desktop')