python基础-09格式化输出的三种主流方式

占位符

程序中常常会有这样场景:要求用户输入信息,而后打印成固定的格式python

好比要求用户输入用户名和年龄,而后打印以下格式:My name is xxx,my age is xxx.code

很明显,用逗号进行字符串拼接,只能把用户输入的名字和年龄放到末尾,没法放到指定的xxx位置,并且数字也必须通过str(数字)的转换才能与字符串进行拼接,很是之麻烦,咱们来试一试。orm

+方法(使用场景太少-->大多数状况弟弟用法)

用逗号进行字符串拼接,只能把用户输入的名字和年龄放到末尾,没法放到指定的xxx位置,并且数字也必须通过str(数字)的转换才能与字符串进行拼接,很是之麻烦
代码以下字符串

age = 18
print('My name is nash,my age is '+str(age))
# 输出结果 ---> My name is xxx,my age is 18

多字符串 + 的使用方法string

name = 'nash'
age = 18
print('My name is '+name+' my age is '+str(age))
# 输出结果 ---> My name is nick my age is 18

上面使用的方法越看越别扭,越看越麻烦。这就须要用到占位符,如:%s(针对全部数据类型)、%d(仅仅针对数字类型)--> 我的见解这用法时候 %s 走天下form

name = 'nash'
age = 18
print('my name is %s my age is %s' % (name, age))
# my name is nash my age is 18
age = 18
print('my age is %d' % age)
# my age is 18


format格式化

讲真,很鸡肋的格式化的方法,若是你须要使用这个,遇到多参数的时候,仍是须要在句子后面噼里啪啦传上一大堆参数。使用这个不如用占位符或下面的f-String格式化。
ps:之前龟叔他们推荐用,我的以为最好用第三种了如今class

name = 'nash'
age = 18
print("Hello, {}. You are {}.".format(name, age))
# Hello, nash. You are 19.
name = 'nash'
age = 18
print("Hello, {1}. You are {0} years old.".format(age, name))
# Hello, nash. You are 18 years old.
name = 'nash'
age = 18
print("Hello, {name}. You are {age} years old.".format(age=age, name=name))
# Hello, nash. You are 18 years old.


f-String格式化

比较占位符的方式,python3.6版本新增了f-String格式化的方式,比较简单易懂.推荐使用这种方式。变量

name = "nash"
age = 18
print(f"Hello, {name}. You are {age}.")
# Hello, nash. You are 19.

大写的F也适用。数据类型

name = "nash"
age = 18
print(F"Hello, {name}. You are {age}.")
# 输出结果
# Hello, nash. You are 18.

变量乘法后在进行格式化(即运算结束后,格式化为最后一步)程序

age = 18
print(f'{age*2}')
# 输出结果
# 36

秀个其余地方看到的操做(内部是不会f影响外部的,而且还能够进行浮点数的小数取值)

salary = 6.6666
print(f'{salary:.2f}')
6.67
相关文章
相关标签/搜索