r
生の文字列リテラルを取得するためにを使用するときに、f 文字列を使用する方法を知りたいです。現在、以下のようになっていますが、任意の名前を置き換えることを許可するオプションが欲しいですAlex
。f 文字列を追加してからAlex
中括弧で置き換え、ユーザー名を中に入れることを考えていましたが、これは では機能しませんr
。
username = input('Enter name')
download_folder = r'C:\Users\Alex\Downloads'
ベストアンサー1
f
f 文字列の とraw 文字列の を組み合わせることができますr
。
user = 'Alex'
dirToSee = fr'C:\Users\{user}\Downloads'
print (dirToSee) # prints C:\Users\Alex\Downloads
バックr
スラッシュ エスケープ シーケンスの処理のみが無効になり、f 文字列の処理は無効になりません。
引用:ドキュメント:
'f' は 'r' と組み合わせることができますが、 'b' や 'u' とは組み合わせることができません。そのため、生のフォーマットされた文字列は可能ですが、フォーマットされたバイトリテラルは不可能です。
...
'r' または 'R' プレフィックスが存在しない限り、文字列およびバイトリテラル内のエスケープ シーケンスは次のように解釈されます...