浅谈字符串格式化

1、什么是字符串格式化?
答:希望可以往字符串里面传递数据,让字符串变得更灵活,最终输出就是一个字符串在这里插入代码片


```python
#字符串格式化
#方法一:
name=input('新生--->')
print('欢迎%s来到学校'%name)

#输入的内容以,为分隔符,传递给两个变量
name,num=input('新生,班级--->').split(',')
#传递多个变量时一定是要元组
stu='欢迎%s来到学校%s班级学习'%(name,num)
print(type(stu))
print(stu)

结果 :
新生-->jack,18
欢迎jack,18来到学校
新生,班级--->jeff,8
<class 'str'>
欢迎jeff来到学校8班级学习

# %5d ---》右对齐五位,所以左边要补齐三位,默认补空格
print('%05d'%25)
结果:00025
# %-5d ---》左对齐五位,右补齐三位,默认补空格
print('%-5d'%25)
结果:25   
# 下面得6代表整体长度,.3f代表小数点后3位,加上小数点和3,本身就有五位了,所以前面补充一个空格
print('%6.3f'%3.1415926)
结果: 3.142
#
#方法二:
#1、顺序传值法---位置不能空出来,值可以多
info='name is {},age is {}'.format('jeff',20)
print(info)

#指定宽度,如下代码运行后会发现指定得宽度左右不一致,传数字都是右对齐,字符串都是左对齐
info='name is {:8},age is {:8},father age is {:8},sex is {:8}'.format('jeff',20,50,'male')
print(info)

#采用强行对齐:>右对齐 ,<左对齐,^中间对齐。如下代码全部右对齐
info='name is {:>8},age is {:>8}'.format('jeff',20)
print(info)
#填满补齐元素
info='name is {:a>8},age is {:0>8}'.format('jeff',20)
print(info)

#2、下标传值法---可以重复使用
info='name is {0},age is {1}'.format('jeff',20)
print(info)
infor='name is {1},age is {1}'.format('jeff',20)
print(infor)
#也可以右对齐
infor='name is {1:>6},age is {1}'.format('jeff',20)
print(infor)

方法二的结果:
name is jeff,age is 20
name is jeff    ,age is       20,father age is       50,sex is male    
name is     jeff,age is       20
name is aaaajeff,age is 00000020
name is jeff,age is 20
name is 20,age is 20
name is     20,age is 20



# #方案三:---只有python3.6以上版本才有
name='jack'
age=30
per=f'name:{name},age:{age}'
print(per)
结果:name:jack,age:30

你可能感兴趣的:(浅谈字符串格式化)