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

最後のスラッシュをエスケープしなかったため、Python はセパレーター (\\) ではなくタブ文字 (\t) が必要だと判断します。test = "C:\\test1/test2\test3.txt"する必要がありますtest = "C:\\test1/test2\\test3.txt"

于 2013-04-12T21:18:10.873 に答える