f文字列と生の文字列リテラルを組み合わせる 質問する

f文字列と生の文字列リテラルを組み合わせる 質問する

r生の文字列リテラルを取得するためにを使用するときに、f 文字列を使用する方法を知りたいです。現在、以下のようになっていますが、任意の名前を置き換えることを許可するオプションが欲しいですAlex。f 文字列を追加してからAlex中括弧で置き換え、ユーザー名を中に入れることを考えていましたが、これは では機能しませんr

username = input('Enter name')
download_folder = r'C:\Users\Alex\Downloads'

ベストアンサー1

ff 文字列の と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' プレフィックスが存在しない限り、文字列およびバイトリテラル内のエスケープ シーケンスは次のように解釈されます...

おすすめ記事