Paiza問題集
Pythonで回答
標準出力/実数をフォーマット指定して出力
Step01 1つの実数を出力
Step01
"""
1つの実数を出力
https://paiza.jp/works/mondai/stdout_primer/stdout_primer__format_real_number_step1
"""
# 実数を出力する
print(float(input()))
Step02 1つの実数を出力2
Step02
"""
1つの実数を出力2
https://paiza.jp/works/mondai/stdout_primer/stdout_primer__format_real_number_step2
"""
# 実数を表示する
print(input())
Step03 1つの実数を表示3
Step03
"""
1つの実数を表示3
https://paiza.jp/works/mondai/stdout_primer/stdout_primer__format_real_number_step3
"""
# 実数を小数点以下3桁で出力
print(f'{float(input()):.3f}')
Step04 1つの実数を表示4
Step04
"""
1つの実数を表示4
https://paiza.jp/works/mondai/stdout_primer/stdout_primer__format_real_number_step4
"""
# 数字を受け取る
numbers = input().split(' ')
num1 = float(numbers[0])
num2 = int(numbers[1])
# 数字を表示する
print('{:.{}f}'.format(num1, num2))
Final問題 【実数をフォーマット指定して出力】複数の実数を出力
Final問題
"""
【実数をフォーマット指定して出力】複数の実数を出力
https://paiza.jp/works/mondai/stdout_primer/stdout_primer__format_real_number_boss
"""
# 数字を表示する
for i in range(int(input())):
numbers = input().split(' ')
num1 = float(numbers[0])
num2 = int(numbers[1])
print('{:.{}f}'.format(num1, num2))
追記
短く書く方法を思いついたので記述します
Step04別解
step04別解
# 数字を受け取る
num1, num2 = [x[0](x[1]) for x in zip([float, int], input().split(' '))]
# 数字を表示する
print(f'{num1:.{num2}f}')
ポイント
- zip関数を使用する
- 得られたリストとリスト内包表記を組み合わせて、float関数とint関数を適用し、num1とnum2に代入する
- f-stringsを使用し出力形式を整える
Final問題 別解
# 数字を表示する
for i in range(int(input())):
num1, num2 = [x[0](x[1]) for x in zip([float, int], input().split(' '))]
print(f'{num1:.{num2}f}')