Python f-string

  f-strings 是python3.6开始加入标准库的格式化输出新的写法,这个格式化输出比之前的%s 或者 format 效率高并且更加简化

简单使用:

他的结构就是F(f)+ str的形式,在字符串中想替换的位置用{}展位,与format类似,但是用在字符串后面写入替换的内容,而他可以直接识别。

name = 'Andy'
age = 18
gender = '男'
msg = F'姓名:{name},性别:{age},年龄:{gender}'  # 大写字母也可以
msg = f'姓名:{name},性别:{age},年龄:{gender}'  
print(msg)

# 输出 
姓名:Andy,性别:18,年龄:男

任意格式:包括运算,列表,字典等等

print(f'{3*21}')  # 63

name = 'andy'
print(f"全部大写:{name.upper()}")  # 全部大写:BARRY

# 字典也可以
teacher = {'name': 'Andy', 'age': 18}
msg = f"The teacher is {teacher['name']}, aged {teacher['age']}"
print(msg)  

# 列表也行
lst = ['Andy', 18]
msg = f'姓名:{lst[0]},年龄:{lst[1]}.'
print(msg)  

# 结果:
63
全部大写:ANDY
The teacher is Andy, aged 18
姓名:Andy,年龄:18.

注意:

! , : { } ;这些标点不能出现在{} 这里面。
所以使用lambda 表达式会出现一些问题

所以使用lambda表达式时,可以通过添加括号得到解决:

x = 5
print(f'{(lambda x: x*2) (x)}')
# 输出 
10

 

上一篇:Python 类的约束

下一篇:Python 可迭代对象与迭代器