返回顶部
首页 > 资讯 > 后端开发 > Python >Python F-Strings怎么使用
  • 304
分享到

Python F-Strings怎么使用

2023-07-06 05:07:10 304人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“python F-Strings怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python F-Strings怎么使用”吧!日期和时间格式使用 f 字符串应用数字格式非

本篇内容主要讲解“python F-Strings怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Python F-Strings怎么使用”吧!

日期和时间格式

使用 f 字符串应用数字格式非常常见,但你知道你还可以格式化日期和时间戳字符串吗?

import datetimetoday = datetime.datetime.today()print(f"{today:%Y-%m-%d}")# 2023-02-03print(f"{today:%Y}")# 2023

f-strings 可以像使用datetime.strftime方法一样格式化日期和时间。当你意识到除了文档中提到的几种格式之外还有更多格式时,这非常好。Python strftime还支持底层 C 实现支持的所有格式,这可能因平台而异,这就是文档中未提及的原因。话虽如此,你仍然可以利用这些格式并使用例如%F,它等效于%Y-%m-%d或%T等效于%H:%M:%S,还值得一提的是%x和%X分别是语言环境首选的日期和时间格式。这些格式的使用显然不限于 f 字符串。

变量名和调试

f-string 功能(从 Python 3.8 开始)最近新增的功能之一是能够打印变量名称和值:

x = 10y = 25print(f"x = {x}, y = {y}")# x = 10, y = 25print(f"{x = }, {y = }")# Better! (3.8+)# x = 10, y = 25print(f"{x = :.3f}")# x = 10.000

此功能称为“调试”,可以与其他修饰符结合使用。它还保留空格,因此f"{x = }"和f"{x=}"将产生不同的字符串。

字符串表示

打印类实例时,__str__默认使用类的方法来表示字符串。但是,如果我们想强制使用__repr__,我们可以使用!r转换标志:

class User:def __init__(self, first_name, last_name):self.first_name = first_nameself.last_name = last_namedef __str__(self):return f"{self.first_name} {self.last_name}"def __repr__(self):return f"User's name is: {self.first_name} {self.last_name}"user = User("John", "Doe")print(f"{user}")# John Doeprint(f"{user!r}")# User's name is: John Doe

我们也可以只repr(some_var)在 f 字符串内部调用,但使用转换标志是一个很好的习惯和简洁的解决方案。

f-strings杰出的性能表现

强大的功能和语法糖通常会带来性能损失,但对于 f 字符串而言情况并非如此:

# python -m timeit -s 'x, y = "Hello", "World"' 'f"{x} {y}"'from string import Templatex, y = "Hello", "World"print(f"{x} {y}")# 39.6 nsec per loop - Fast!print(x + " " + y)# 43.5 nsec per loopprint(" ".join((x, y)))# 58.1 nsec per loopprint("%s %s" % (x, y))# 103 nsec per loopprint("{} {}".fORMat(x, y))# 141 nsec per loopprint(Template("$x $y").substitute(x=x, y=y))# 1.24 usec per loop - Slow!

上面的示例使用timeit如下模块进行了测试:python -m timeit -s 'x, y = "Hello", "World"' 'f"{x} {y}"'正如你所看到的,f 字符串实际上是 Python 提供的所有格式化选项中最快的。因此,即使你更喜欢使用一些较旧的格式化选项,你也可以考虑切换到 f-strings 只是为了提高性能。

格式化规范的全部功能

F-strings 支持 Python 的Format Specification Mini-Language,所以你可以在它们的修饰符中嵌入很多格式化操作:

text = "hello world"# Center text:print(f"{text:^15}")# 'hello world'number = 1234567890# Set separatorprint(f"{number:,}")# 1,234,567,890number = 123# Add leading zerosprint(f"{number:08}")# 00000123

Python 的Format Specification Mini-Language不仅仅包括格式化数字和日期的选项。它允许我们对齐或居中文本、添加前导零/空格、设置千位分隔符等等。所有这些显然不仅适用于 f 字符串,而且适用于所有其他格式设置选项。

嵌套 f-strings

如果基本的 f-strings 不足以满足你的格式化需求,你甚至可以将它们相互嵌套:

number = 254.3463print(f"{f'${number:.3f}':>10s}")# '$254.346'

你可以将 f-strings 嵌入 f-strings 中以解决棘手的格式化问题,例如将美元符号添加到右对齐的浮点数,如上所示。

如果你需要在格式说明符部分使用变量,也可以使用嵌套的 f 字符串。这也可以使 f 字符串更具可读性:

import decimalwidth = 8precision = 3value = decimal.Decimal("42.12345")print(f"output: {value:{width}.{precision}}")# 'output: 42.1'

条件格式

在上面带有嵌套 f 字符串的示例之上,我们可以更进一步,在内部 f 字符串中使用三元条件运算符:

import decimalvalue = decimal.Decimal("42.12345")print(f'Result: {value:{"4.3" if value < 100 else "8.3"}}')# Result: 42.1value = decimal.Decimal("142.12345")print(f'Result: {value:{"4.2" if value < 100 else "8.3"}}')# Result:142

lambda表达式

如果你想突破 f-strings 的限制,同时让阅读你代码的人觉得你很牛逼,那么你可以使用 lambdas

print(f"{(lambda x: x**2)(3)}")# 9

在这种情况下,lambda 表达式周围的括号是强制性的,因为:否则将由 f 字符串解释。

到此,相信大家对“Python F-Strings怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Python F-Strings怎么使用

本文链接: https://lsjlt.com/news/357798.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python F-Strings怎么使用
    本篇内容主要讲解“Python F-Strings怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python F-Strings怎么使用”吧!日期和时间格式使用 f 字符串应用数字格式非...
    99+
    2023-07-06
  • Python 中 f-Strings 的作用
    目录1、变量名2、直接改变输出结果3、直接格式化日期4、2/8/16 进制输出真的太简单5、格式化浮点数6、字符串对齐7、使用 !s,!r8、自定义格式学过 Python 的朋友应该...
    99+
    2024-04-02
  • python3怎么用f-strings格式化字符串
    这篇文章将为大家详细讲解有关python3怎么用f-strings格式化字符串,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。用f-strings格式化字符串(Python 3.6+)这是自Python &...
    99+
    2023-06-27
  • Python 的 f-strings 作用远超你的预期
    学过 Python 的朋友应该都知道 f-strings 是用来非常方便的格式化输出的,觉得它的使用方法无外乎就是 print(f'value = { value }',其实,f-strings 远超你的预期,今天来梳理一下它还能做那些很酷...
    99+
    2023-05-14
    Python 字符串 f-strings
  • python中的f‘{}‘怎么使用
    这篇文章主要讲解了“python中的f‘{}‘怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python中的f‘{}‘怎么使用”吧!python中f&lsquo;{}&...
    99+
    2023-07-05
  • python中f怎么用
    f-字符串是 python 3.6 中引入的格式化字符串语法糖,提供了简洁且安全的方式来插入表达式和变量。f-字符串以字符串前缀 f 为标志,使用大括号包含表达式或变量。f-字符串支持条...
    99+
    2024-05-15
    python
  • python语法print中的f-string怎么使用
    这篇文章主要讲解了“python语法print中的f-string怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python语法print中的f-string怎么使用”吧!f-str...
    99+
    2023-07-05
  • Linux系统的strings命令怎么使用
    本篇内容介绍了“Linux系统的strings命令怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!strings是二进制工具集GNU ...
    99+
    2023-06-28
  • 怎么使用python的f-string格式化输出
    本篇内容介绍了“怎么使用python的f-string格式化输出”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!f-string简介pytho...
    99+
    2023-06-01
  • Linux中strings命令怎么用
    这篇文章主要介绍了Linux中strings命令怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Linux常用命令strings命令 在对象文件或二进制文件中查找可打印的...
    99+
    2023-06-28
  • python如何使用F字符串
    这篇文章主要介绍了python如何使用F字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。F字符串(F-Strings)F字符串提供了一种简洁方便的方法,可以将Python...
    99+
    2023-06-27
  • Python中str.format()和f-string的使用
    目录方式一 (str.format()) :print('{}'.format(var))方式二 (f-string) :print(f'{var}'...
    99+
    2023-02-27
    Python str.format() Python f-string
  • python调用powershell,f
    1、Get_RemoteAPP.ps1 set-executionpolicy remotesigned Import-Module RemoteDesktopServices function GetAPP(){     $result...
    99+
    2023-01-31
    python powershell
  • Python中str.format()和f-string如何使用
    这篇文章主要介绍“Python中str.format()和f-string如何使用”,在日常操作中,相信很多人在Python中str.format()和f-string如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希...
    99+
    2023-07-05
  • 怎么在python中使用f方法格式化字符串
    怎么在python中使用f方法格式化字符串?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对...
    99+
    2023-06-14
  • Golang strings包常用字符串操作函数怎么使用
    这篇文章主要讲解了“Golang strings包常用字符串操作函数怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Golang strings包常用字符串操作函数...
    99+
    2023-06-22
  • Linux中如何使用strings命令
    这篇文章将为大家详细讲解有关Linux中如何使用strings命令,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Linux常用命令strings命令在对象文件或二进制文件中查找可打印的字符串。字符串是4个...
    99+
    2023-06-28
  • python之print(f“ “)用法
    python之print(f" ")用法 Python输出函数print加上 f 的作用:即print(f" “) 主要作用就是格式化字符串,加f后可以在字符串里面使用用花括号括起来的变量和表达式,使...
    99+
    2023-10-20
    python 开发语言
  • python怎么用f-string来连接字符串
    这篇文章主要为大家展示了“python怎么用f-string来连接字符串”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python怎么用f-string来连接字...
    99+
    2024-04-02
  • python如何使用f-string中的"="
    这篇文章主要介绍python如何使用f-string中的"=",文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!f-string 里"="的应用在...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作