语法解释:
info=‘我的名字是%s,我的年龄是%s’%(name,age)
% 是占位符
s 有默认转换的能力,用str()函数进行字符串转换
d 转成有符号的十进制数
f 转成浮点数(小数部分自然截断)
x 转成无符号的十六进制数(x/X代表转换后的十六进制字符的大小写)
简单示例:
name='tom'
age=20
info='我的名字是%s,我的年龄是%s'%(name,age)#元素超过2个 变量要用元组格式
print(info)
#打印:我的名字是tom,我的年龄是20
def my_str(name,age):
print('我的名字是%s,我的年龄是%s'%(name,age))
my_str('sunqq',19)
#打印:我的名字是sunqq,我的年龄是19
1.1常见用法——%d指定宽度
注意1:默认用空格补齐,宽度前写0就用0补齐,用其他格式的字符代替补齐值会报错,最好实用默认或0)
注意2:在%s中使用%a.b时,取b不足用0补齐,再看位数a,不足空格补齐
print('%d'%56)
#打印:56
print('%10d'%56) #最小---正数--右对齐,左补齐
#打印: 56
#10是宽度10个字符,56是2个,不足补齐8个,默认从左补齐
print('%-10d'%56)#最小---正数--右=左对齐,右补齐
#打印:56 。
print('%1d'%56) #打印的长度小于数据时,按照数据长度打印
#打印:56
print('%010d'%400) #十位,不足的以0补齐
#打印:0000000400
print('%010d'%5000)
#打印:0000005000
print('%10d'%12) #d格式,接入的是str类型,会报错
*# print('%10d'%'sun')*
#TypeError: %d format: a number is required, not str
print('%10.4d'%56)
#打印: 0056 #取4位数,不足用0补齐,再看位数,不足空格补齐
1.2常见用法——%s指定宽度
注意:在%s中使用%a.b时,先截取b字符串,再看a的位数补足b字符串
在学习过程中有什么不懂得可以加我的
python学习交流扣扣qun,784758214
群里有不错的学习视频教程、开发工具与电子书籍。
与你分享python企业当下人才需求及怎么从零基础学习好python,和学习什么内容
str='jasper'
print('我的名字是%s~~'%str)
#打印:我的名字是jasper~~ #常规打印
print('我的名字是%2s~~~~'% str)
#打印:我的名字是jasper~~
#当打印的字符串长度<原字符串时,按照原字符串打印;当打印的字符串长度>原字符串时,空格补齐
print('我的名字是%10s~~'%str)
#我的名字是 jasper~~
print('我的名字是%.2s~~'%str)
#我的名字是ja~~ #打印的字符串是截取原字符串的前2位
print('我的名字是%10.2s~~'%str)
#我的名字是 ja~~ #打印的字符串是截取原字符串的前2位,且要求显示10位,然后用空格补足8位
1.3常见用法——%f指定宽度
注意:在%f中使用%a.b时,小数点后是小数点取几位小数,小数点前指取的小数的全部个数;
注意:格式化输出默认是6位小数–且四舍五入
print('%f'%3.1415926)
#打印:3.141593
print('%.2f'%3.1495926)
#打印:3.15 #保留小数点后2位且四舍五入
print('%.9f'%3.1415926)
#打印:3.141592600 #不足的补0
print('%15.10f'%3.1415926) #先取出10位小数,取出的小数位数>原小数位数,取原小数且用0补足10位;取出的小数位数<原小数位数,取10位
1.4常见用法——%x/X指定宽度
注意:#符号是十六进制的前缀0x/0X
print('%x'%108)
#打印:'6c'
print('%X'%108)
#打印:'6C'
print('%#x'%108)
#打印:'6c'
print('%#X'%108)
#打印:'6c'
延伸补充(个人看法:1.1-1.3是重点掌握,其余了解即可)
符号描述
%c格式化字符及其ASCII码*
%s格式化字符串
%d格式化整数
%u格式化无符号整型
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)
%f格式化浮点数字,可指定小数点后的精度
%e用科学计数法格式化浮点数
%E作用同%e,用科学计数法格式化浮点数
%g%f和%e的简写
%G%f 和 %E 的简写
%p用十六进制数格式化变量的地址
解释:
使用{}来代替传统的%方式
‘{},{}’,字符串中的{}和%意思一样,都是占位符,不是字典
2.1——顺序填值
name='tom'
age=20
info='我叫:{}~~,我的年龄是:{},哈哈'.format(name,age)
print(info)
#指定宽度--{:宽度}:花括号中的:冒号是固定语法,宽度直接输入想要的数值
info='我叫:{:6}~~,我的年龄是:{:6},哈哈'.format(name,age)
print(info)
#打印:我叫:tom ~~,我的年龄是: 20~~
#注:1:.format()函数默认指定宽度,对于字符串类型是左对齐,然后补齐空缺,数值类型是右对齐,然后补齐空缺
#注意2:.format()函数自定义对齐,:后使用>大于号,是右对齐; < 小于号是左对齐,^中间号是中间对齐
info='右对齐——我叫:{:>6}~~,我的年龄是:{:>6},哈哈'.format(name,age)
print(info)
#打印:右对齐——我叫: tom~~,我的年龄是: 20,哈哈
info='左对齐——我叫:{:<6}~~,我的年龄是:{:<6},哈哈'.format(name,age)
print(info)
#打印:左对齐——我叫:tom ~~,我的年龄是:20 ,哈哈
info='中间对齐—我叫:{:^6}~~,我的年龄是:{:^6},哈哈'.format(name,age)
print(info)
#打印:中间对齐—我叫: tom ~~,我的年龄是: 20 ,哈哈
#注意2:.format()函数自动补齐的内容是随意的,默认补空格,想补什么类型就想在对齐方向前面即可
info='我叫:{:4>6}~~,我的年龄是:{:*>6},哈哈'.format(name,age)
print(info)
#打印:我叫:444tom~~ ,我的年龄是:****20,哈哈
2.2—— 下标填值法
{1:6},:冒号前面是下标填值法的区域,会把.format(name,age),内容看成一个元组,
name是下标为0的元素,age是下标为1的元素,冒号前写0就是name,写1就是age的值
info='1下标填值法---我叫:{0:4>6}~~,我的年龄是:{0:*>6},哈哈'.format(name,age)
print(info)
#1下标填值法---我叫:444tom~~,我的年龄是:***tom,哈哈
info='2下标填值法---我叫:{1:4>6}~~,我的年龄是:{1:*>6},哈哈'.format(name,age)
print(info)
#2下标填值法---我叫:444420~~,我的年龄是:****20,哈哈
info='3下标填值法---我叫:{1}~~,我的年龄是:{1},哈哈'.format(name,age)
print(info)
#{}中只写1个数值或写1:(1加冒号),默认是下标填值法
#打印:3下标填值法---我叫:20~~,我的年龄是:20,哈哈
2.3—— 变量填值法
1 print('我叫:{name}~~,我的年龄是:{age},哈哈'.format(name='sun',age=19))
2 print('我叫:{name}~~,我的年龄是:{age},哈哈'.format(age=19,name='sun'))
补充:如果字符串中本来就带有{},怎么输出
#叫{cute的}中的花括号会认为是占位符,不用转译,直接在{}加一层{}即可
print('我叫{{cute的}}:{1:4>6}~~,我的年龄是:{{{1:*>6}}},哈哈'.format(name,age))
#打印:我叫{cute的}:444420~~,我的年龄是:{****20},哈哈
解释:
f是forma的缩写,f的用法是python3.6中特有的,最方便的一种
print(f'我叫{{cute的}}:{name}~~,我的年龄是:{age},哈哈')
#打印:我叫{cute的}:tom~~,我的年龄是:20,哈哈
对Python感兴趣或者是正在学习的小伙伴,可以加入我们的Python学习扣qun:784758214,看看前辈们是如何学习的!从基础的python脚本到web开发、爬虫、django、数据挖掘等,零基础到项目实战的资料都有整理。送给每一位python的小伙伴!每天都有大牛定时讲解Python技术,分享一些学习的方法和需要注意的小细节,点击加入我们的 python学习者聚集地
以上是就是文章的全部内容,觉得文章还不错的话不妨收藏起来慢慢看,有任何建议或看法欢迎大家在评论区分享讨论!