首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
Python 中的 f-string
基本的字符串格式化
f-string 的限制
格式化一个表达式
使用 f-string 来调试代码
格式化数字的不同进制
用 f-string 打印对象
使用f-string设定浮点数精度
将一个数字格式化为百分数
调整或者增加 f-string 的填充
转义符号
使字符串居中
格式化千分位
使用科学计数法显示一个数字
在 f-string 中使用 if-else
在 f-string 中使用字典
用 f-string 拼接字符串
格式化 datetime 对象
修复f-string的非法格式错误
在字符串前补零
处理多行f-string
当前位置:
首页>>
技术小册>>
Python合辑5-格式化字符串
小册名称:Python合辑5-格式化字符串
虽然f-string十分的便捷,但它并不能完全代替str.format。f-string在表达式出现的上下文中进行求值计算。根据PEP498,这意味着该表达式可以获取所有局部和全局变量。而且该表达式是在运行时计算的表达式。如果在 { <expr> } 之中使用的表达式无法被计算,就会跳出如下异常。 ``` >>> f"{name}" --------------------------------------------------------------------------- NameError Traceback(most recent call last) <ipython-input-1-f0acc441190f> in<module> ----> 1 f"{name}" NameError: name 'name' is not defined ``` 这对 str.format 来说就不是问题,可以提前定义一个模板字符串,并在之后调用.format方法时再传递上下文信息。 ``` >>> s = "{name}" >>> s.format(name="Python") 'Python' >>> print(s) {name} ``` 另外还有个限制是,不能在f-string中使用行内注释。 ``` >>> f"My name is {name #name}!" File "<ipython-input-37-0ae1738dd871>", line 1 f"My name is {name #name}!" ^ SyntaxError: f-string expression part cannot include '#' ```
上一篇:
基本的字符串格式化
下一篇:
格式化一个表达式
该分类下的相关小册推荐:
Python合辑2-字符串常用方法
Python编程轻松进阶(一)
Python甚础Django与爬虫
Python神经网络入门与实践
剑指Python(万变不离其宗)
Python机器学习基础教程(上)
Python合辑7-集合、列表与元组
Python爬虫入门与实战开发(下)
Python与办公-玩转Excel
Python合辑3-字符串用法深度总结
Python数据分析与挖掘实战(上)
Python合辑1-Python语言基础