python的格式化输出
现在python作为一门火热的语言,很多小伙伴都在通过视频或者书籍来学习python,但是因为python中有很多的新特性,课件中并没有实时更新,所以在这里特意给小伙伴们分享一下格式化输出的几种方法.
1.%占位法
name = "王二" age = 18 money = 175.32 print("大家好,我叫%s,今年%d岁,兜里还有%f块钱" % (name, age, money))
%占位法作为最普遍的一种格式化输出方式,因为这种方法出现较早,所以一般书籍上,课件上都是这种方法,这种方法存在明显的弊端
1.对于新手不是十分的友好,大家还要特意去记住%后面的字母所对应的数据格式.
2.书写格式比较麻烦
2.format方法
这时还有第二种方法.format 它和%占位法有什么区别呢,大家来看下面的代码
name = "王二" age = 18 money = 175.32 print("大家好,我叫{},今年{}岁,兜里还有{}块钱".format(name, age, money))
1.由上面的代码大家可以看出,在.format方法中,我们不需要再去记住额外的字符,只需要在需要格式化输出的时候用一对{}来代替就可以了.
2.大家在平时的练习中可能会发现,如果%占位法中,我们前面引用了两个占位,但是后面括号中出现了三个变量,就会报错,但是.format方法中,就算我们前面引用了和format后面中不对称的变量,也不会报错.
3.在%占位法中,我们的money是一个浮点型,我们利用%f占位输出之后会发现,输出变成了6位小数175.320000,这就需要我们把%f换成%.2f,才会输出2位小数,而在.format方法中,就不会存在上述问题.
3.F-string方法
在python3.6后 增加了一个新方法,F-string法,本人强烈推荐使用这种方法,原因如下
1、结构化更加简洁
2、可以结合表达式,函数进行使用
3、效率提示很多
name = "王二" age = 18 money = 175.32 print(F"大家好,我叫{name},今年{age}岁,兜里还有{money}块钱")
1.由上面的代码大家可以看出,F-string的输出格式,他只需要在字符串的前面加上一个F(大小写随意),然后在我们想输出的内容中加上{},里面写上对应的变量就可以了.
2.配合表达式使用
# 小王的年龄是18岁,小李比小王年龄的两倍还大3岁,小李多少岁 wang_name = 18 print(F"小李的年龄是{wang_name * 2 - 3}")
3.配合函数使用
def func(a, b): return a + b print(F"函数func的值为{func(12, 34)}")
4.配合字符串内置方法,eg(巴拉巴拉变大写)
str_1 = "csdn牛批" print(F"我想说{str_1.upper()}") # upper() 使字符串中小写字母变为大写字母
通过上面的内容应该可以给小小白一些帮助,少走一些弯路,比如我在刚学习的时候,一直搞不懂格式化输出有什么用哈哈哈哈.
如果大家还有什么不理解的东西可以留言给我,我再继续更新.
以前一直在某园写,后来发现用某园的越来越少了,转战这里了,祝大家在学习的过程中少走弯路!