一学就废|Python基础碎片,格式化F-string

news2025/1/11 14:09:30

         Python 3.6 中引入了 f-string语法,提供了一种简洁直观的方法来将表达式和变量直接嵌入到字符串中进行字符串格式化,f -string背后的想法是使字符串插值更简单。 

        要创建 f -string,在字符串前加上字母 “f”即可,与字符串本身的格式化方式与使用 str. format()的方式非常相似。f -string提供了一种简洁方便的方法,使得代码看起来更简洁。 

使用 f-string 打印变量

        以下示例,我们使用花括号在f-string中使用变量值,直接将变量值嵌入到字符串中进行打印输出。

# Python3 program introducing f-string
val = 'Hello'
print(f"变量值为:{val}.")

变量值为:Hello.


name = '码路刺客'
age = 32
print(f"Hello, My name is {name} and I'm {age} years old.")

Hello, My name is 码路刺客 and I'm 32 years old.

使用 f-string 打印日期

        以下示例中,我们使用 Python 中的 datetime 模块和 f-string 打印了今天的日期。首先导入 datetime 模块,然后我们使用 f-ting 打印日期。在 f-string 的花括号中分配了当前日期,% B、% d 和 % Y 分别代表完整的月份、天和年份。        

# Prints today's date with help
# of datetime library
import datetime

today = datetime.datetime.today()
print(f"{today:%B %d, %Y}")

November 26, 2024

        f-string比两种常用的字符串格式化机制(% formatting 和 str. format() )更快。

f-string中的单引号和双引号

        在 Python 中,要在 f-string中使用任何类型的引号,我们必须确保表达式中使用的引号与 外部 f-string使用的引号不同。

# 输出单引号
print(f"'Hello World'")

# 输出双引号
print(f"""Hello"My"World""")

# 输出单引号
print(f'''Hello'My'God''')

'Hello World'
Hello"My"World
Hello'My'God

使用 f-Strings 计算表达式

        在 Python 中,我们也可以使用 f-string来计算表达式。我们必须将表达式写在 f-string的花括号内,计算结果将如下面代码的输出。

english = 78
maths = 56
chinese = 85

print(f"各科总分为: {english + maths + chinese}")

各科总分为: 219

使用 f-string 时报错

        在 Python的 f-string 中,反斜杠不能直接用于格式字符串。

print(f"换行符的ascii码: {ord('\n')}")

  File "C:\Users\69570\AppData\Local\Temp/ipykernel_19724/3445930297.py", line 1
    print(f"换行符的ascii码: {ord('\n')}")
                                    ^
SyntaxError: f-string expression part cannot include a backslash

# 变通
newline = ord('\n')
print(f"换行符的ascii码: {newline}")

换行符的ascii码: 10

使用 f-string 打印花括号

        如果我们想在 f-string 的输出中显示花括号,那么我们必须在 f-string 中使用双花括号。请注意,对于每一对单花括号,我们需要像下面的代码中那样输入双花括号。

# Printing single braces
print(f"{{Hello, World}}")

# Printing double braces
print(f"{{{{Hello, World}}}}")

{Hello, World}
{{Hello, World}}

使用 f-string 输出字典键值

var = { 'Id': 112,'Name': 'Harsh'}

print(f"Id of {var['Name']} is {var['Id']}")

Id of Harsh is 112

使用 f-string 输出数值精度

num = 3.14159
formatted = f"{num:.2f}"
print(formatted)  # Output: 3.14

使用 f-string 动态拼装JSON

name = "Alice"
age = 30
json_data = f'{{ "name": "{name}", "age": {age} }}'
print(json_data)

Output:
{ "name": "Alice", "age": 30 }

        在 Python 3.6 中引入 f-string 之前,您可以使用 str. format()方法或使用 % formatting(旧式格式)来格式化字符串.

name = "Alice"
age = 30
sentence = "My name is {} and I am {} years old.".format(name, age)
print(sentence)

Output:
My name is Alice and I am 30 years old.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2248403.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SVG无功补偿装置MATLAB仿真模型

“电气仔推送”获得资料(专享优惠) 模型简介 SVG(又称ASVG 或STATCOM)是Static Var Generator 的缩写,叫做静止无功发生器。也是做无功补偿的,比SVC 更加先进。其基本原理是将自换相桥式电路通过电抗器或…

MVC、EL、JSTL

1.MVC设计模式 三层: MVC: M(Model)模型:负责业务逻辑处理,数据库访问。 V(View)视图:负责与用户交互。 C(Controller)控制器:负责流程…

Web开发技术栈选择指南

互联网时代的蓬勃发展,让越来越多人投身软件开发领域。面对前端和后端的选择,很多初学者往往陷入迷茫。让我们一起深入了解这两个领域的特点,帮助你做出最适合自己的选择。 在互联网发展的早期,前端开发主要负责页面布局和简单的…

太通透了,Android 流程分析 蓝牙enable流程(应用层/Framework/Service层)

零. 前言 由于Bluedroid的介绍文档有限,以及对Android的一些基本的知识需要了(Android 四大组件/AIDL/Framework/Binder机制/JNI/HIDL等),加上需要掌握的语言包括Java/C/C等,加上网络上其实没有一个完整的介绍Bluedroid系列的文档&#xff0…

R语言绘图过程中遇到图例的图块中出现字符“a“的解决方法

R语言绘图过程中遇到图例的图块中出现字符的解决方法 因为我遇到这个问题的时候没在网上找到合适的方法,找到个需要付费的,算了。也许是因为问的方式不同,问了半天AI也回答出来,莫名有些烦躁,打算对代码做个分析&…

【C语言】字符串左旋的三种解题方法详细分析

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C语言 文章目录 💯前言💯题目描述💯方法一:逐字符移动法💯方法二:使用辅助空间法💯方法三:三次反转法💯方法对…

【346】Postgres内核 Startup Process 通过 signal 与 postmaster 交互实现 (5)

1. Startup Process 进程 postmaster 初始化过程中, 在进入 ServerLoop() 函数之前,会先通过调用 StartChildProcess() 函数来开启辅助进程,这些进程的目的主要用来完成数据库的 XLOG 相关处理。 如: 核实 pg_wal 和 pg_wal/archive_status 文件是否存在Postgres先前是否发…

大数据面试SQL题-笔记02【查询、连接、聚合函数】

大数据面试SQL题复习思路一网打尽!(文档见评论区)_哔哩哔哩_bilibiliHive SQL 大厂必考常用窗口函数及相关面试题 大数据面试SQL题-笔记01【运算符、条件查询、语法顺序、表连接】大数据面试SQL题-笔记02【查询、连接、聚合函数】​​​​​​​ 目录 01、查询 01…

【Python中while循环】

一、深拷贝、浅拷贝 1、需求 1)拷贝原列表产生一个新列表 2)想让两个列表完全独立开(针对改操作,读的操作不改变) 要满足上述的条件,只能使用深拷贝 2、如何拷贝列表 1)直接赋值 # 定义一个…

51单片机从入门到精通:理论与实践指南入门篇(二)

续51单片机从入门到精通:理论与实践指南(一)https://blog.csdn.net/speaking_me/article/details/144067372 第一篇总体给大家在(全局)总体上讲解了一下51单片机,那么接下来几天结束详细讲解,从…

【pyspark学习从入门到精通20】机器学习库_3

目录 使用 ML 预测婴儿生存几率 加载数据 创建转换器 创建估计器 创建管道 拟合模型 使用 ML 预测婴儿生存几率 在这一部分,我们将使用前一章中的数据集的一部分来介绍 PySpark ML 的概念。 在这一部分,我们将再次尝试预测婴儿的生存几率。 加载…

【计算机网络】核心部分复习

目录 交换机 v.s. 路由器OSI七层更实用的TCP/IP四层TCPUDP 交换机 v.s. 路由器 交换机-MAC地址 链接设备和设备 路由器- IP地址 链接局域网和局域网 OSI七层 物理层:传输设备。原始电信号比特流。数据链路层:代表是交换机。物理地址寻址,交…

LLamafactory 批量推理与异步 API 调用效率对比实测

背景 在阅读 LLamafactory 的文档时候,发现它支持批量推理: 推理.https://llamafactory.readthedocs.io/zh-cn/latest/getting_started/inference.html 。 于是便想测试一下,它的批量推理速度有多快。本文实现了 下述两种的大模型推理,并对…

【自动化Selenium】Python 网页自动化测试脚本(上)

目录 1、Selenium介绍 2、Selenium环境安装 3、创建浏览器、设置、打开 4、打开网页、关闭网页、浏览器 5、浏览器最大化、最小化 6、浏览器的打开位置、尺寸 7、浏览器截图、网页刷新 8、元素定位 9、元素交互操作 10、元素定位 (1)ID定位 &…

Table 滚动条始终停靠在可视区域的底部

1. 话题引入 存在这样一个场景:当页面尺寸发生变化时,希望滚动条能够随之动态调整,始终展示在 table 的可视区域的最下方,而不是整个 table 本身的最底部。 这种行为可以提升用户的使用体验,尤其是在处理大数据表格时…

【漏洞复现】CVE-2020-13925

漏洞信息 NVD - CVE-2020-13925 Similar to CVE-2020-1956, Kylin has one more restful API which concatenates the API inputs into OS commands and then executes them on the server; while the reported API misses necessary input validation, which causes the hac…

基于Springboot的心灵治愈交流平台系统的设计与实现

基于Springboot的心灵治愈交流平台系统 介绍 基于Springboot的心灵治愈交流平台系统,后端框架使用Springboot和mybatis,前端框架使用Vuehrml,数据库使用mysql,使用B/S架构实现前台用户系统和后台管理员系统,和不同级别…

快速理解微服务中Gateway的概念

一.基本概念 定义: 在微服务架构中,Spring Cloud Gateway 是一个用于API网关的框架,它是一个基于 Spring Framework 的高效、可扩展的路由器和反向代理,它能够将外部请求转发到适当的微服务,并提供一些与请求处理相关…

Java【多线程】(1)进程与线程

目录 1.前言 2.正文 2.1什么是进程 2.2PCB(进程控制块) 2.2.1进程id 2.2.2内存指针 2.2.3文件描述符表 2.2.4进程状态 2.2.4.1就绪状态 2.2.4.2阻塞状态 2.2.5进程优先级 2.2.6进程上下文 2.2.7进程的记账信息 2.3CPU操作进程的方法 2.4什…

计算机毕业设计Python+大模型美食推荐系统 美食可视化 美食数据分析大屏 美食爬虫 美团爬虫 机器学习 大数据毕业设计 Django Vue.js

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…