python的f-string 格式化字符串
f-string
格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法,该方法源于PEP 498 – Literal String Interpolation
,主要目的是使格式化字符串的操作更加简便
。f-string在形式上是以 f 或 F 修饰符引领的字符串(f'xxx' 或 F'xxx')
,以大括号 {}
标明被替换的字段;f-string在本质上并不是字符串常量
,而是一个在运行时运算求值的表达式
:
f-string在功能方面不逊于传统的%-formatting语句和str.format()函数
,同时性能又优于二者,且使用起来也更加简洁明了,因此对于Python3.6及以后的版本,推荐使用f-string进行字符串格式化。
简单使用
>>> name = 'Eric'
>>> f'Hello, my name is {name}'
'Hello, my name is Eric'>>> number = 7
>>> f'My lucky number is {number}'
'My lucky number is 7'>>> price = 19.99
>>> f'The price of this book is {price}'
'The price of this book is 19.99'
表达式求值与函数调用
f-string的大括号 {} 可以填入表达式或调用函数,Python会求出其结果并填入返回的字符串内:
>>> f'A total number of {24 * 8 + 4}'
'A total number of 196'>>> f'Complex number {(2 + 2j) / (2 - 3j)}'
'Complex number (-0.15384615384615388+0.7692307692307692j)'>>> name = 'ERIC'
>>> f'My name is {name.lower()}'
'My name is eric'>>> import math
>>> f'The answer is {math.log(math.pi)}'
'The answer is 1.1447298858494002'
多行f-string
f-string还可用于多行字符串:>>> name = 'Eric'
>>> age = 27
>>> f"Hello!" \
... f"I'm {name}." \
... f"I'm {age}."
"Hello!I'm Eric.I'm 27."
>>> f"""Hello!
... I'm {name}.
... I'm {age}."""
"Hello!\n I'm Eric.\n I'm 27."
自定义格式:对齐、宽度、符号、补零、精度、进制等
f-string采用 {content:format}
设置字符串格式,其中 content
是替换并填入字符串的内容
,可以是变量
、表达式或函数
等,format 是格式描述符
。采用默认
格式时不必指定 {:format}
,如上面例子所示只写 {content}
即可。
python的f-string 格式化字符串相关推荐
- 趣学python3(1)-f前缀格式化字符串文本
f前缀格式化字符串文本 print("您叫什么名字") name=input() print(f"{name},很高兴认识你") width = 15 prec ...
- 在Python中优雅的格式化字符串的两种方式
欢迎关注 "小白玩转Python",发现更多 "有趣" 引言 在 python 中有多种格式化字符串的方法.本文中我们将了解如何通过format()函数和f-s ...
- 零基础入门学习Python(14)-格式化字符串
什么是格式化字符串 格式化字符串就是按照统一的规格去输出一个字符串,如果规格不统一,就很可能造成误会 format()方法 接受位置参数和关键字参数两种参数 二者均传递到一个replacement的字 ...
- Python基本数据类型——String(字符串)
字符串的创建 字符串是最常用的数据类型,我们可以用单引号和双引号"来创建字符串,然后赋值给变量.例如 name = 'alex' address = "China" py ...
- Python中用format函数格式化字符串的用法
自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓威力十足.那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱. 语法 它通过{}和 ...
- python 零散记录(三) 格式化字符串 字符串相关方法
使用 % 符号格式化字符串: """常用转换说明符:""" #%s: 按照str()方式转换 #%r: 按照repr()方式转换 #%d: ...
- C++ format string (格式化字符串)
为什么要单独做C++字符串格式化? C++中可以使用stringstream来格式化字符串如下: stringstream sstream; sstream << "I have ...
- Python中常用的格式化字符串方法
下面写了下我所了解的三种格式化字符串方法,推荐第三种 第一种方式: 常用'%s'.'%f'.'%d'. 符号 描述 %s 格式化为字符串,采用 str() 显示 %r 格式化为字符串,采用 repr( ...
- Python中用format函数格式化字符串的用法(2.7版本讲解哦!)
语法 它通过{}和:来代替%. "映射"示例 通过位置 In [1]: '{0},{1}'.format('kzc',18) Out[1]: 'kzc,18' In [2]: '{ ...
- CString、std::string格式化字符串
2019独角兽企业重金招聘Python工程师标准>>> =============================CString=========================== ...
最新文章
- oracle元数据存储在表空间,oracle db中数据和元数据的概念
- Kubernetes排错:用容器的元数据提供新思路
- AngularJS快速入门指南15:API
- 今天学到的几个函数【二】
- [七月挑选]Tomcat使用命令行启动之指定jdk版本
- VMware 6 个少为人知的技巧
- 05.SpringBoot的yml配置详解
- git生成SSH密钥提示ssh文件不存在-已解决
- creo工程图模板_Creo工程图的优越性总结(仅供参考),来自网友与君共享
- k8s springboot 文件_用Kubernetes部署Springboot或Nginx,也就一个文件的事
- Android---------------Handler的学习
- Excel学习笔记:P1-Excel入门
- 摄像头与成像——做图像处理必须了解的数字成像系统原理
- 还记得儿时的那片海么?
- 微信公众号之自定义菜单
- 开放耳机有什么优缺点,列举出几款口碑不错的开放式耳机
- AMD推两款集成CPU和GPU的新FirePro处理器
- hadoop框架流程图梳理
- expected an indented block报错的原因
- cruisecontrol 配置