2
0

Pythonのf文字列

Last updated at Posted at 2023-11-05

はじめに

printやテキストボックスへの出力時に活躍するf文字列についてまとめる。

f文字列とは

Python3.6から対応された文法。文字列内に変数を埋め込む場合、{変数}でくくれば良く、format()よりスマートに記述が可能。

タイプ コード
f文字列 a = 100
print(f'# これは{a}円です。')
# これは100円です。
format() a = 100
print('# これは{}円です。'.format(a))
# これは100円です。

f文字列例

format()ではできない(頑張ればできるのかもしれないが。)、変数名出力や、計算式を埋め込むこともできるのが便利。

fstring_test.py
#基本
a = 1000
b = 0.12345
print(f'# int型:{a} float型:{b}')
# int型:1000 float型:0.12345

#桁区切り(3桁区切り)
a = 1000
print(f'# int型:{a:,}')
# int型:1,000

#0埋め(8桁右詰め,8桁0埋め)
a = 1000
print(f'# int型:{a:8} int型:{a:08}')
# int型:    1000 int型:00001000

#桁指定(小数点3桁四捨五入)
a = 0.12345
print(f'# float型:{a:.3}')
# float型:0.123

#パーセント(小数点2桁%)
a = 0.12
print(f'# パーセント:{a:.2%}')
# パーセント:12.00%

#進数変換(16進数,2進数)
a = 100
b = 12345678
print(f'# 16進数:0x{a:x}, 0b{a:b}')
print(f'# 16進数:0x{b:08x}, 0b{b:032_b}')
# 16進数:0x64, 0b1100100
# 16進数:0x00bc614e, 0b00_1011_1100_0110_0001_0100_1110

#符号(+付き,+をスペース)
a=100
b=-100
print(f'# 符号:{a:+} {b:+}')
print(f'# 符号:{a: } {b: }')
# 符号:+100 -100
# 符号: 100 -100

#変数名出力
a = 1000
print(f'# 変数名:{a=}')
# 変数名:a=1000

#式計算(整数変換)
a = 100.123456
print(f'# 式計算:{int(a)}')
# 式計算:100

#辞書型(""注意)
d={'a':100,'b':0.123456}
print(f'# 辞書型:{d["a"]},{d["b"]}')
# 辞書型:100,0.123456

#いろいろ組み合わせ
d={'a':100,'b':0.123456}
print(f'#組み合わせ:{d["a"]=:04X}')
print(f'#組み合わせ:{d["b"]=:+.2%}')
#組み合わせ:d["a"]=0064
#組み合わせ:d["b"]=+12.35%

# 型や桁指定自体もフォーマット文字にできる。可変にできる。
d={'a':100,'b':0.123456}
format_type1='04X'
format_type2='+.2%'
print(f'#組み合わせ:{d["a"]=:{format_type1}}')
print(f'#組み合わせ:{d["b"]=:{format_type2}}')
#組み合わせ:d["a"]=0064
#組み合わせ:d["b"]=+12.35%

以上

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0