首页 > 编程语言 >python中的f-string

python中的f-string

时间:2024-11-24 14:10:59浏览次数:3  
标签:格式化 string python 字符串 pi 表达式 name

在 Python 中,f" " 语法表示 f-string,是一种用于格式化字符串的方式。f 代表“格式化”(formatted),即它允许在字符串中嵌入表达式或变量,并将其评估后嵌入到字符串中。

这种语法在 Python 3.6 及以后版本中被引入,是一种非常简洁且高效的字符串格式化方法。

1. 基本用法

在 f-string 中,你可以直接在字符串中使用花括号 {} 来包含变量或表达式,并且这些表达式会在字符串创建时自动被求值并替换为对应的值

比如

name = "Alice"
age = 30
greeting = f"Hello, my name is {name} and I am {age} years old."
print(greeting)

输出如下:

img

在上面的例子中,f" " 字符串中嵌入了 name 和 age 变量,它们会被替换成对应的值。

2. 表达式支持

f-string 不仅支持变量,还支持任何有效的 Python 表达式。例如,你可以在花括号内进行计算、调用函数、访问属性等。

比如

a = 5
b = 10
result = f"The sum of {a} and {b} is {a + b}."
print(result)

输出如下:

img

在这个例子中,a + b 被直接嵌入到 f-string 中,计算结果 15 会在字符串中显示。

3. 格式化数字

f-string 还允许你使用格式化代码来控制如何显示数值。例如,可以设置浮点数的小数位数、整数的对齐方式等。

比如

pi = 3.141592653589793
formatted_pi = f"Pi to 3 decimal places is {pi:.3f}."
print(formatted_pi)

输出如下:

img

在这个例子中,{pi:.3f} 表示将 pi 格式化为保留三位小数的浮点数。

关于设置整数对齐方式的相关内容,可以看下这篇博客python如何设置整数对齐方式

4. 多行 f-string

f-string 也支持多行字符串,可以使用三引号 f""" """f''' ''' 来创建多行格式化字符串。

比如

name = "Alice"
age = 30
message = f"""
Name: {name}
Age: {age}
"""
print(message)

输出如下:

img

5. 性能

f-string 的优点之一是性能比传统的格式化方法(如 % 格式化str.format())更高效。

6. 总结

  • f-string 是一种在 Python 中用于字符串格式化的简洁方式。

  • 使用 f" " 前缀,可以在字符串中直接嵌入变量和表达式。

  • 它可以提高代码的可读性和性能,是推荐的格式化方式。

  • f-string 支持复杂的表达式和格式化选项,使得字符串格式化更加灵活和强大。

标签:格式化,string,python,字符串,pi,表达式,name
From: https://www.cnblogs.com/hisun9/p/18565763

相关文章

  • python中的__str__
    __str__是Python中的一个特殊方法,用于定义对象的字符串表示形式。这个方法允许你控制当你尝试打印或以字符串形式表示一个对象时,应该显示什么内容。简单来说,__str__方法定义了对象的“可读性”或“友好表示”。1.作用当你打印一个对象(例如print(obj)),或在交互式Python......
  • python VS c++
    一、语法特点Python:语法简洁、优雅,代码可读性极强,采用缩进来表示代码块,摒弃了像C++那样使用大括号的传统方式,使得代码看上去十分清晰简洁。例如:​if5>3:print("5大于3")elif5==3:print("5等于3")else:print("5小于3")​整个代码结构通过......
  • HackBlazer---virus python3.11.9版本
    一下是基于hackblazer的virus!virus--1importtkinterastkfromtkinterimportmessageboxprint("<DigitalTrailBlazer>")defdisable_close(event):try:messagebox.showinfo("提示","此窗口无法通过常规方式关闭哦!")return......
  • 【Python】 深入理解Python的单元测试:用unittest和pytest进行测试驱动开发
    《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!单元测试是现代软件开发中的重要组成部分,通过验证代码的功能性、准确性和稳定性,提升代码质量和开发效率。本文章深入介绍Python中两种主流单元测试框架:unittest和pytest,并结合测试驱动开发(TDD)的思想,展示如......
  • 【Python运维】基于Python的日志分析系统:从解析到存储与可视化的完整实现
    《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!日志文件记录了系统和服务器运行的重要信息,是排查问题、优化性能的重要数据来源。本篇文章将以实际需求为导向,使用Python构建一个完整的日志分析系统。我们将介绍如何解析常见的服务器日志格式,并将其存储......
  • 【StringRedisTemplate】SpringBoot项目集成Redis
    目录SpringDataRedis介绍SpringDataRedis的作用SpringDataRedis提供的工具类环境准备引入依赖配置文件StringRedisTemplate的使用StringRedisTemplate的基础APIStringRedisTemplate的常用操作APIRedis的应用场景SpringDataRedis介绍SpringData是Spring......
  • 用python写一段k-means聚类算法,要求使其能够显示聚类前后的差异,绘图使其可视化
    当您使用K-means算法时,可以使用scikit-learn库中的KMeans类来实现。以下是一个示例代码,可以帮助您理解如何使用K-means算法进行聚类,并使用matplotlib库绘制可视化结果。importnumpyasnpfromsklearn.clusterimportKMeansimportmatplotlib.pyplotasplt#创建一个......
  • 使用Python实现自动化邮件通知:当长时程序运行结束时
    使用Python实现自动化邮件通知:当长时程序运行结束时前提声明本代码仅供学习和研究使用,不得用于商业用途。请确保在合法合规的前提下使用本代码。目录引言项目背景项目设置代码分析导入所需模块定义邮件发送函数发送邮件实现步骤结语全部代码引言在开发过程中,我们经......
  • LeetCode题解:29.两数相除【Python题解超详细,位运算、二分查找法、递归法】,知识拓展:位
    题目描述        给你两个整数,被除数 dividend 和除数 divisor。将两数相除,要求 不使用 乘法、除法和取余运算。整数除法应该向零截断,也就是截去(truncate)其小数部分。例如,8.345 将被截断为 8 ,-2.7335 将被截断至 -2 。返回被除数 dividend 除以除数 div......
  • C++,Java,Python,Javascript实现二分查找算法
    二分查找算法是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两半,通过比较中间元素与目标值来决定是在左半部分还是右半部分继续查找,从而逐步缩小查找范围直到找到目标值或者确定目标值不存在于数组中。下面是使用C++、Java、Python和JavaScript实现二......