Python自体は、文字列に引用符を追加する場合など、いくつかの特殊文字をエスケープするために\を使用します
s ='i\'m superman'print(s) # i'm superman
文字列自体の引用符との競合を防ぐために、\を使用してエスケープします。通常は問題ありませんが、\を使用して\をエスケープする場合は、より混乱します。たとえば、出力したい場合などです。 1つの\、2つの\を記述する必要があります。そうしないと、構文エラーが報告されます。\はその後の引用符をエスケープするため、\を使用する必要があります。
# 進入禁止
# print '\'
# 正しい書き方
print('\') # \
# ネイティブ文字列
print(r'\') # \
エスケープ機能がないように\をエスケープして、正しく出力できるようにします。ネイティブ文字列を使用すると、出力に2つの\が表示されます。これは、いくつかの書き込みと出力のように見えます。 、奇数の\を出力できるかどうかを確認できます。
ナレッジポイントの拡張:
pythonでバックスラッシュを文字列として個別に出力する方法
状況は次のようになります。「\ u5feb \ u901f \ u4e0a \ u4f20」という名前のファイルがあります。
次に、os.listdir( '。')を使用して表示すると、バックスラッシュが自動的にエスケープされ、 '\ u5feb \ u901f \ u4e0a \ u4f20'になります。
だから問題は、ダブルスラッシュをシングルスラッシュに置き換える方法ですか?
文字列を置き換えようとしましたが、バックスラッシュが一重引用符をエスケープして文字列の終わりを見つけることができないため、a.replace( '\'、 '')はエラーを引き起こします。a.replace(r 'を使用してください\ '、r' \ ')も機能しません。
私の目標を達成するのに役立つ良い方法はありますか?
name ='\u5feb\u901f\u4e0a\u4f20'
print name
\ u5feb\u901f\u4e0a\u4f20
print repr(name)'\u5feb\u901f\u4e0a\u4f20'
print [name]['\u5feb\u901f\u4e0a\u4f20']
print [name][0]
\ u5feb\u901f\u4e0a\u4f20
これまで、pythonでバックスラッシュを出力する方法に関するこの記事を紹介しました。pythonでバックスラッシュを出力する方法の詳細については、ZaLou.Cnの以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後、ZaLouをさらにサポートしていただければ幸いです。 .Cn!
Recommended Posts