2017-08-15 13 views
-1

私のコードで文字がエスケープするのを避けるために、入力パス "\"を "/"に置き換えようとしています。をPythonの入力ディレクトリに置き換えます

path = input("Enter the Directory:) 
path.replace('\' , '/') 

まず第一に、ユーザは、パス(コピーし、Windowsエクスプローラからそれを貼り付ける)を入力した場合ので、私はこれをしたい理由がある、それはCにある:私の問題を与えている\ユーザー\フォルダ大会後で私のプログラムで実際のパスを出力する必要があり、生の文字列メソッドのためにC:\ User \ Folderにダブル "\"を付けてくれます。

'\'がエスケープ文字であると考えているため、私のpath.replace()が機能しません。私も試した:

path.replace((r'\'), '/') 

しかし、入力全体が文字列になり、動作しません。誰でもこれを行うための助言、または\ /の代わりに/にコピーされた入力パスを得る別の方法がありますか?ありがとう!

+2

ちょうど 'path.replaceを( '使用\\ '、'/') ' –

+0

文字「\」が必要な場合は、「\\」を二重にエスケープする必要があります。エスケープは、文字の通常の意味を取り消します。この場合、エスケープの通常の意味はエスケープすることです。 -_- – illiteratecoder

+1

'path = path.replace( '\\'、 '/')' – khelwood

答えて

3

replaceは、文字列のコピーを返し、あなたはこれを使用してみてください変数

path = input("Enter the Directory: ") 
path = path.replace('\\' , '/') 
0

に結果を割り当てる必要があります:

path.replace('\\', '/') 
関連する問題