后浪小萌新Python --- 格式字符串

一、字符串拼接

把需要的字符串加起来

二、格式字符串

语法:

带有格式占位符的字符串 % (数据1, 数据2, 数据3,…)

说明:

  1. 格式占位符 - 字符串中不同类型数据的占位符号, 固定的。

                  %s - 字符串的格式占位符(任何类的数据都可以赋值)

                  %d - 整数的格式占位符

                  %f - 浮点数的占位符

                  %.Nf - 浮点数的占位符, 并且控制小数点有N位小数(四舍五入)

                  %c - 字符的格式占位符(可以给字符,也可以给编码值)

  2. %() - 固定写法

  3. 数据 - 最后给字符串中不确定内容赋值的数据;数据的个数和类型要和前面占位

                    符的个数以及类型保持一致

举例:

name = '夏明'
sex = '男'
age = 40
score = 60
money = 23489.12312

message = '%s 性别: %s, 年龄: %d, 今天考了%d分' %(name, sex, age, score)
print(message)

message2 = '金额: %f' % (12)
print(message2)

message3 = '金额: %.2f' % (12.78121531)
print(message3)

message4 = '97: %c' % ('a')
print(message4)

message5 = '97: %c' % (97)
print(message5)

运行结果:

夏明 性别:, 年龄: 40, 今天考了60分
金额: 12.000000
金额: 12.78
97: a
97: a

三、format字符串(f-string)

format

  1. 带{}的字符串.format(数据1, 数据2, 数据3,…)
  2. {下标}
  3. {key}
  4. {:约束}/{下标:约束}/{key: 约束}
    a. 约束小数位数 - {:.Nf}
    b. 控制显示正负号 {:+}
    c. 控制数字的宽度: {:x>N} / {:x<N}
        (N表示数据最终的位数,
        x是填充数字, > 表示填充在原数字的左边,
        < 填充在右边(x没有表示用空格占位))
    d. 大数字用逗号隔开: {:,}
    e. 显示百分比: {:.N%} - N是控制百分制数小数点的位数

举例:

# 用法1:{}的字符串.format(数据1, 数据2, 数据3,...)
message = '大家好, 我是{}, 今年{}岁, 我是一只{}'.format('小白', 3, '银狐')
print(message)

# 用法2: {下标}
message = '大家好, 我是{0}, 我的名字是{0}, 今年{1}岁'.format('余婷', 18)
print(message)

# 用法3: {key}
message = '大家好, 我是{name}, 我的名字是{name}, 今年{age}岁, 我是{sex}的'.format(name='余婷', age=3, sex='女')
print(message)

# 用法4: {:约束}/{下标:约束}/{key: 约束}
# 可以加约束, 约束去菜鸟可以查到
# 1) 约束小数位数 - {:.Nf}
message1 = 'a-{:.1f}, b-{:.2f}'.format(10, 20)
print(message1)

print('a-{0:.1f},b-{1:.2f},a-{0:.3f}'.format(10, 20))
'我的名字是xxx, 月薪:xxx.xx元'
print('我的名字是{name}, 月薪:{money:.2f}元'.format(name='余婷', money=672818))

# 2) 控制显示正负号 {:+}
print('a:{:+} b:{:+}'.format(10, -20))

# 3) 控制数字的宽度: {:x>N} / {:x<N} - N表示数据最终的位数, x是填充数字, >表示填充在原数字的左边, <填充在右边(x没有表示用空格占位)
print('a:{:>5}, b:{:<5}!'.format(10, 20))
print('a:{:0>5}, b:{:y<5}!'.format(10, 20))

# 4) 大数字用逗号隔开: {:,}
print('a:{:,}, b:{:,}'.format(100, 10000000))

# 5) 显示百分比: {:.N%} - N是控制百分制数小数点的位数
print('a:{:.2%}, b:{:.1%}'.format(0.12, 0.789))

运行结果:

大家好, 我是小白, 今年3, 我是一只银狐
大家好, 我是余婷, 我的名字是余婷, 今年18岁
大家好, 我是余婷, 我的名字是余婷, 今年3, 我是女的
a-10.0, b-20.00
a-10.0,b-20.00,a-10.000
我的名字是余婷, 月薪:672818.00元
a:+10 b:-20
a:   10, b:20   !
a:00010, b:20yyy!
a:100, b:10,000,000
a:12.00%, b:78.9%

f-string的用法

语法:

f’{数据}’

举例:

name = '小花'
age = 18
message = f'姓名: {name}, 年龄: {age:.1f}'
print(message)
print(f'a:{100}')

运行结果:

姓名: 小花, 年龄: 18.0
a:100
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值