本篇内容介绍了“Python格式化输出字符串的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
Python 格式化输出字符串(输出字符串+数字的几种方法)
1. 介绍
字符串格式化输出是python非常重要的基础语法。
2. 方法
2.1 使用占位符%输出
python2.6版本之前,使用%格式化字符串沿用的是C语言的输出格式。
使用说明:
一般格式:print(“格式化字符串” % 变量);
变量超过2个使用元组格式:print(“格式化字符串” % (变量1,变量2));
使用%占位符表示字符串中变量位置,传入的值要与%占位符的变量一一对应;
存在格式化标志时,需要 %% 表示一个百分号。
name='xiaoming' age=12 print("My name is %s, My age is %d" %(name,age)) '''print My name is xiaoming, My age is 12 '''
2.2 format格式化
format是python2.6新增的一个格式化字符串的方法,相比%格式化方法有如下优点:
单个参数可以多次输出,参数顺序可以不相同;
填充方式十分灵活,对齐方式十分强大;
官方推荐用的方式;
使用说明:
print(“…{索引}, … , {索引}, …”.format(值1, 值2))
#索引{}为空,默认按照顺序取值print(“…{key1}, … , {key2}, …”.format(key1=value,key2=value))
2.2.1 一般用法
name = 'xiaoyang' age = 20 print('My name is {}, My age is {}'.format(name,age)) print('My name is {0}, My age is {1}'.format(name,age)) print('My name is {1}, My age is {0}'.format(name,age)) print('My name is {name}, My age is {age}'.format(name=name, age=age)) '''print My name is xiaoyang, My age is 20 My name is xiaoyang, My age is 20 My name is 20, My age is xiaoyang My name is xiaoyang, My age is 20 '''
2.2.2 进阶用法
填写时要用冒号来开头,填写后,会按照其指定的规则来进行格式化。
#保留2位有效数字 print("{:.2f}".format(3.1415926)) #转成二进制 print('{0:b}'.format(16)) #转成八进制 print('{0:o}'.format(10)) #转成十六进制 print('{0:x}'.format(15)) '''print 3.14 10000 12 f '''
2.2.2.1 填充对齐
# 先取到值,然后在冒号后设定填充格式:{索引:[填充字符][对齐方式][宽度]} # *<20:左对齐,总共20个字符,不够的用*号填充 print('{0:*<20}'.format('hellopython')) # *>20:右对齐,总共20个字符,不够的用*号填充 print('{0:*>20}'.format('hellopython')) # *^20:居中显示,总共20个字符,不够的用*号填充 print('{0:*^20}'.format('hellopython')) '''print hellopython********* *********hellopython ****hellopython***** '''
2.2.2.2 位数与进制转换(注意不要忽略冒号)
#保留2位有效数字 print("{:.2f}".format(3.1415926)) #转成二进制 print('{0:b}'.format(16)) #转成八进制 print('{0:o}'.format(10)) #转成十六进制 print('{0:x}'.format(15)) '''print 3.14 10000 12 f '''
2.3 f-string格式化
在Python 3.6中引入了 f-strings,不仅比str.format使用简单,而且效率也更高。
使用说明:
name='xiaoyang' age=20 #{}中直接使用变量 print(f'My name is {name}, My age is {age}') #{}中运行表达式 print(f'{1+2+3}') #调用Python内置函数 print(f'{name.upper()}') #用lambda匿名函数:可以做复杂的数值计算 fun = lambda x : x+1 print(f'{fun(age)}') '''print My name is xiaoyang, My age is 20 6 XIAOYANG '''
“Python格式化输出字符串的方法有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程之家网站,小编将为大家输出更多高质量的实用文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。