2016-07-27 12 views
0

/\に置き換えようとしていますが、動作しません。なぜですか?"/"を ""に置き換えても動作しません

str = "images/companyPkg/Pkg/nib64/" 
replaced_str = str.replace('//','\\') 
print replaced_str 
+0

を記述する必要があります。 – univerio

+3

なぜあなたは '/'を使っていますか? '/'はエスケープする必要はありません。 –

+3

とにかくパスのように見えるもので '/'文字を変更する必要があるのは変です。 – mgilson

答えて

8

'/'は2倍にする必要はありません。文字列は'\'で終わることができないため'\'が倍増されています

s = "images/companyPkg/Pkg/nib64/" 
replaced_str = s.replace('/','\\') 

strはPythonで組み込み(文字列のクラス)で、名前strには何も割り当てないでください。代入を行うと、あとであなたのコードで組み込み名を使用できなくなります。あなたはそれを望んでいません。

2

あなたはその次の行は、トリックを行う必要がありますちょうど\ pythonで/をエスケープする必要はありません。

replaced_str = str.replace('/', '\\') 
0

それはエスケープ文字であるとするために使用されるので、あなたがバックスラッシュ\を倍増すべきですたとえばn用として、特定の文字に特別な意味を提供することシンプルである「n」をしかし\n新しいラインですが、あなたはそれを倍にする必要はありませんので、スラッシュ/は単純な文字です。

あなたは\と `//`置き換えるしようとしているので、あなたは replaced_str = str.replace('/','\\')

関連する問題