不断积累,步步高升:记录我的Python学习历程-python中f-string介绍

2023-09-01 08:21:05 浏览数 (1)

最近在看python基础的时候,又发现一个之前没怎么掌握的字符串格式化的小技巧,f-string

f-string 格式化

f-string是Python3.6引入的一种字符串格式化方式,它提供了一种简洁、直观的方式来将变量值嵌入到字符串中。在 f-string 中,可以在字符串前加上 f 或 F,然后用 {} 括起变量或表达式来进行字符串插值。

下面直接演示几种用法:

案例一:变量替换

代码语言:javascript复制
name = "小博"
age = 31
print(f"My name is {name} and I am {age} years old.")
输出:My name is 小博 and I am 31 years old.

案例二:表达式的替换

代码语言:javascript复制
x = 1
y = 2
print(f"{x}   {y} = {x   y}")
输出:1   2 = 3

案例三:使用格式化控制符控制精度等格式

代码语言:javascript复制
π = 3.14159265
print(f"π 的值是 {π:.2f}.")
输出:π 的值是 3.14.

案例四:使用变量的属性

代码语言:javascript复制
class Student:
    def __init__(self, name, age):
        self.name = name
        self.age = age

stu = Student("张三", 21)
print(F"{stu.name} is {stu.age} years old.")

案例五:结合if语句一起使用

代码语言:javascript复制
salary = 10
print(f"你的收入{'超过了18k' if salary >= 18 else '没有超过18k'}.")
输出:你的收入没有超过18k.

案例六:Python 3.8中引入的一种称为"Debug f-strings"的新特性

代码语言:javascript复制
a = 1
b = 2
print(f"{a=},{b=}")
输出 a=1,b=2

要特别注意哈,案例六的用法,在python3.8以上的版本才支持哈,3.7的版本这么写是会报错的哟:

说明:

{a=}和{b=}会将变量a和b的名称和值作为字符串插入到输出中,方便在调试过程中查看变量的值。这个特性可以让你更快地了解代码中的变量值,而不用手动打印或者调试。需要注意的是,这个特性只在Python 3.8及以上版本中可用。如果你使用的是Python 3.7或更早的版本,你可以使用类似print(f"a={a}, b={b}")的方式来达到同样的效果。

下面留一些练习题,大家可以思考一下通过f-string怎么巧妙的输出这些结果:

0 人点赞