Python中的f-string

Python中的f-string是以 f 或 F 开头的字符串,例如 f"...",允许你在字符串中直接嵌入变量或表达式,只需要通过花括号将它们括起来。它是Python3.6新引入的一种字符串格式化方法,主要目的是使格式化字符串的操作更加简便。

它的基本语法是:

f'string {variable/expression:condition}' 或者 f"string {variable/expression:condition}"
  • { } 花括号用于包含要格式化的变量或表达式。
  • 冒号左边你要输出的变量名或表达式。
  • 冒号用于分隔输出内容和格式说明符,冒号及其右侧内容是可选的。

以下是一些例子:

1. 直接代入变量:
name = "Alice"
age = 30
print(f"我的名字是 {name}, 今年 {age} 岁。")

输出:

我的名字是 Alice, 今年 30 岁。
2.使用表达式:
2.1 计算表达式
print(f'Result one is {3*3 +7}')
a = 2
b = 5
print(f'Result two is {a**b}') 
str = 'It is so cool!'
print(f'{str.upper()}')

输出:

Result one is 16
Result two is 32
IT IS SO COOL!
2.2 调试模式
x=3.14159
print(f'{x = }')

输出:

x = 3.14159
3.使用条件设置格式化输出
3.1 浮点数打印,保留小数点后三位
x= 3.1415926
# 使用 f-string 格式化输出,保留三位小数
print(f"这个浮点数保留三位小数是:{x:.3f}")

输出:

这个浮点数保留三位小数是:3.142

.3f是格式说明符,表示保留三位小数的浮点数输出。

  • f: 表示以标准浮点数格式输出。
  • 3: 保留的小数位数。
  • .: 小数点,表示这是一个浮点数格式。
3.2 更多格式控制

除了上例中的小数点位数的控制之外,f-string还支持多种格式控制功能
f-string支持三种对齐方式:
<:左对齐(字符串默认对齐方式
>:右对齐(数值默认对齐方式)
^:居中。
f-string支持将数字格式化为二进制、十进制、八进制和十六进制
#b:二进制整数格式
#d:十进制整数格式
#o:八进制整数格式
#x:十六进制整数格式(小写字母)
#X:十六进制整数格式(大写字母)
f-sring也可以指定输出宽度和是否使用0来补位。

实例代码:

x=3.1415926
print(f'左对齐:{pi = :<010.4f}')
print(f'右对齐:{pi = :>010.4f}')

s='Python'
print(f'居中,宽度20位:{s = :^20}')
print(f'居右,宽度20位:{s = :>20}')

y = 160
#十进制整数,宽度10位
print(f'十进制,居中,补位:{y:^#010d}')
print(f'十进制,居中,不补位:{y:^#10d}')
print(f'十进制,居右,补位:{y:>#010d}')
print(f'十进制,居左,补位:{y:<#010d}')
#二进制整数,显示前缀0b
print(f'二进制,居中:{y:^#10b}')
#八进制整数,显示前缀0o
print(f'八进制,居中:{y:^#10o}')
#十六进制整数(大写字母),显示前缀0X
print(f'十六进制,居中:{y:^#10X}')

输出:

左对齐:pi = 3.14150000
右对齐:pi = 00003.1415

居中,宽度20位:s =        Python
居右,宽度20位:s =               Python

十进制,居中,补位:0001600000
十进制,居中,不补位:   160
十进制,居右,补位:0000000160
十进制,居左,补位:1600000000
二进制,居中:0b10100000
八进制,居中:  0o240
十六进制,居中:   0XA0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值