1

考虑下面的例子

#junk path ending with a test file
test = "C:\\test1/test2\test3.txt"

withimport osos.path.abspathin 可以规范化路径名

test_norm = os.path.abspath(test)
print test_norm    
C:\\test1\\test2\test3.txt'

如果我将路径名拆分为os.path.split我有以下问题

os.path.split(test_norm)
('C:\\test1', 'test2\test3.txt')

代替

C:\\test1\\test2 and test3.txt

此问题源于用户键入input_raw目录作为示例的事实。我可以避免这种情况raw_input吗?

4

2 回答 2

2

Easy:'\t'是一个制表符。您需要使用'C:\\test1\\test2\\test3.txt'r'C:\test1\test2\test3.txt'

于 2013-04-12T21:16:11.083 回答
2

你没有逃脱最后的斜线,所以 python 认为你想要一个制表符 (\t) 而不是分隔符 (\\)。test = "C:\\test1/test2\test3.txt"应该是test = "C:\\test1/test2\\test3.txt"

于 2013-04-12T21:18:10.873 回答