python三种格式化输出方法

方式一:使用占位符%输出

name = 'tutu'
age = 18
print("我的名字是 %s, 我的年龄是 %d" % (name, age))

#  %s表示字符串,%d表示整数,%f表示小数(默认保留小数点后6位,%.2f保留两位小数

方式二: format格式化

name = 'tutu'
age = 18
print('我的名字是 {}, 我的年龄是 {}'.format(name, age))

# 扩展:使用位置和关键字参数
print('我的名字是 {0}, 我的年龄是 {1}'.format(name,age))
print('我的名字是 {name}, 我的年龄是 {age}'.format(name='tutu',age=18))

方式三:f-string格式化

在Python 3.6中引入 了f-strings,不仅比str.format使用简单,而且效率也更高。

name = 'tutu'
age = 18
print(f'我的名字是 {name}, 我的年龄是 {age}')

--------------------------------------------------------分割线------------------------------------------------------------------

例题:依次输入一个学生的3科成绩,在屏幕上输出该学生的总成绩以及平均成绩。

输入描述:一行,3科成绩,成绩之间用一个空格隔开。

输出描述:一行,总成绩和平均成绩(小数点后保留两位),用一个空格隔开。

示例:
输入:
79.5 80.0 98.0

输出:
257.50 85.83

在输出时,保留两位小数,涉及到格式化输出,有三种方法可任选一种:

方法一,占位符格式化操作:%操作符( 格式化字符串,%d表示一个数字类型的占位符, %s  str型, %f float型

s1= map(float,input().split(' '))
s2= sum(s1)
print('%.2f %.2f'%(s2,s2/3))

# 或:
s = list(map(float, input().split()))
print('%.2f %.2f' % (sum(s), sum(s) / 3))

 

方法二,字符串format()方法

f = map(float,input().split(' '))
s = sum(f)
print('{:.2f} {:.2f}'.format(s,s/3))

 

方法三,f-string格式化,python3.6以后的版本中可以使用

f = map(float,input().split(' '))   #map()
sum1 = round(sum(f),2)
avg = round(s/3,2)  #round()函数返回一个浮点数,并带有指定的小数位数。
print(f'{sum1} {avg}')
# 保留两位小数也可以用 f'{num:.2f}'

 

posted @ 2021-12-12 17:21  Tutu007  阅读(4149)  评论(0编辑  收藏  举报