当前位置: 首页 > news >正文

9.Python从入门到精通—Python 字符串格式化,三引号,Unicode 字符串

9.Python从入门到精通—Python 字符串格式化,三引号,Unicode 字符串

  • Python 字符串格式化
  • Python 三引号
  • Unicode 字符串
    • 创建 Unicode 字符串
    • Python 的字符串内建函数

Python 字符串格式化

Python中的字符串格式化是指将一个字符串中的占位符替换为指定的值。Python中有多种字符串格式化的方法,以下是其中的几种常见方法:

使用百分号(%)进行字符串格式化

使用百分号(%)进行字符串格式化是Python中最早的字符串格式化方法。它的基本语法如下:

"格式化字符串" % (1,2, ...)

其中,格式化字符串中使用占位符来表示需要替换的位置,占位符以%开始,后面跟着一个或多个字符,表示需要替换的值的类型。常见的占位符有:

%d:整数
%f:浮点数
%s:字符串
%c:字符
%x:十六进制整数

例如:

name = 'Tom'
age = 18
print('My name is %s, and I am %d years old.' % (name, age))

输出结果为:

My name is Tom, and I am 18 years old.

使用format()方法进行字符串格式化

使用format()方法进行字符串格式化是Python中常用的字符串格式化方法之一。它的基本语法如下:

"格式化字符串".format(1,2, ...)

其中,格式化字符串中使用占位符来表示需要替换的位置,占位符以{}表示。如果需要在占位符中指定值的类型,可以在{}中使用冒号(:)进行格式化。例如:

name = 'Tom'
age = 18
print('My name is {}, and I am {} years old.'.format(name, age))

输出结果为:

My name is Tom, and I am 18 years old.

使用f-string进行字符串格式化

使用f-string进行字符串格式化是Python 3.6及以上版本中新增的字符串格式化方法。它的基本语法如下:
f"格式化字符串"

其中,格式化字符串中使用占位符来表示需要替换的位置,占位符以{}表示。如果需要在占位符中指定值的类型,可以在{}中使用冒号(:)进行格式化。例如:

name = 'Tom'
age = 18
print(f'My name is {name}, and I am {age} years old.')

输出结果为:

My name is Tom, and I am 18 years old.

Python 三引号

在 Python 中,三引号用于创建多行字符串,可以使用单引号或双引号来表示。三引号中的文本可以包含换行符、引号等特殊字符,而无需使用转义字符。以下是一些示例代码,演示了 Python 中三引号的使用:

a = '''This is a multi-line string.
It can span multiple lines.'''
print(a)b = """This is another multi-line string.
It can also span multiple lines."""
print(b)

输出结果为:

This is a multi-line string.
It can span multiple lines.
This is another multi-line string.
It can also span multiple lines.

需要注意的是,三引号中的文本会保留原始格式,包括空格和换行符。

如果不希望保留原始格式,可以使用字符串方法 strip() 来删除首尾的空格和换行符。例如:

c = '''    This is a multi-line string.It can span multiple lines.    '''
print(c.strip())

输出结果为:

This is a multi-line string.
It can span multiple lines.

Unicode 字符串

在 Python 中,Unicode 字符串是一种特殊的字符串类型,用于表示任意字符集中的字符。Unicode 字符串以“u”开头,例如 u’Hello, world!'。在 Python 3 中,所有字符串都是 Unicode 字符串。

Unicode 字符串可以包含任何 Unicode 字符,包括 ASCII 字符和非 ASCII 字符。Unicode字符串可以使用转义序列来表示任意 Unicode 字符,例如 \uXXXX 和 \UXXXXXXXX,其中 XXXX 和 XXXXXXXX
分别表示 Unicode 字符的十六进制编码。

以下是一些示例代码,演示了 Python 中 Unicode 字符串的使用:

创建 Unicode 字符串

a = u'Hello, world!'
b = u'你好,世界!'
c = u'\u2603\u2764\u2600'  # 表示雪花、心形和太阳的 Unicode 字符print(a)
print(b)
print(c)

输出结果为:


```python
Hello, world!
你好,世界!
☃❤☀

需要注意的是,Python 2 中默认的字符串类型是 ASCII 字符串,如果需要使用 Unicode字符串,需要在字符串前面添加“u”前缀。而在 Python 3 中,所有字符串都是 Unicode 字符串,无需添加前缀。
总之,Unicode 字符串在 Python 中是非常有用的,可以帮助我们处理各种字符集中的字符。

Python 的字符串内建函数

Python中的字符串内建函数是指可以直接使用的与字符串相关的函数,以下是一些常见的字符串内建函数:

len():返回字符串的长度。

capitalize():将字符串的第一个字符转换为大写字母。

lower():将字符串中的所有字符转换为小写字母。

upper():将字符串中的所有字符转换为大写字母。

title():将字符串中每个单词的首字母大写。

swapcase():将字符串中的大小写字母互换。

count():返回字符串中指定子字符串的出现次数。

find():查找字符串中指定子字符串的位置,如果找到返回第一次出现的位置,否则返回-1。

index():查找字符串中指定子字符串的位置,如果找到返回第一次出现的位置,否则会抛出异常。

replace():将字符串中指定的子字符串替换为另一个字符串。

split():将字符串按照指定的分隔符分割成多个子字符串,并返回一个列表。

strip():去除字符串两端的空格或指定字符。

join():将多个字符串拼接成一个字符串。

isdigit():判断字符串是否只包含数字字符。

isalpha():判断字符串是否只包含字母字符。

isspace():判断字符串是否只包含空格字符。

isupper():判断字符串中所有字母是否都是大写字母。

islower():判断字符串中所有字母是否都是小写字母。

startswith():判断字符串是否以指定的子字符串开头。

endswith():判断字符串是否以指定的子字符串结尾。

# len() 示例
s = "Hello, World!"
print(len(s))  # 输出:13# capitalize() 示例
s = "hello, world!"
print(s.capitalize())  # 输出:"Hello, world!"# lower() 示例
s = "Hello, World!"
print(s.lower())  # 输出:"hello, world!"# upper() 示例
s = "Hello, World!"
print(s.upper())  # 输出:"HELLO, WORLD!"# title() 示例
s = "hello, world!"
print(s.title())  # 输出:"Hello, World!"# swapcase() 示例
s = "Hello, World!"
print(s.swapcase())  # 输出:"hELLO, wORLD!"# count() 示例
s = "hello, world! hello, world!"
print(s.count("hello"))  # 输出:2# find() 示例
s = "hello, world!"
print(s.find("world"))  # 输出:7# index() 示例
s = "hello, world!"
print(s.index("world"))  # 输出:7# replace() 示例
s = "hello, world!"
print(s.replace("world", "Python"))  # 输出:"hello, Python!"# split() 示例
s = "hello,world,Python"
print(s.split(","))  # 输出:['hello', 'world', 'Python']# strip() 示例
s = "   hello, world!   "
print(s.strip())  # 输出:"hello, world!"# join() 示例
s1 = "hello"
s2 = "world"
print("-".join([s1, s2]))  # 输出:"hello-world"# isdigit() 示例
s = "12345"
print(s.isdigit())  # 输出:True# isalpha() 示例
s = "hello"
print(s.isalpha())  # 输出:True# isspace() 示例
s = "   "
print(s.isspace())  # 输出:True# isupper() 示例
s = "HELLO"
print(s.isupper())  # 输出:True# islower() 示例
s = "hello"
print(s.islower())  # 输出:True# startswith() 示例
s = "hello, world!"
print(s.startswith("hello"))  # 输出:True# endswith() 示例
s = "hello, world!"
print(s.endswith("world!"))  # 输出:True

相关文章:

9.Python从入门到精通—Python 字符串格式化,三引号,Unicode 字符串

9.Python从入门到精通—Python 字符串格式化,三引号,Unicode 字符串 Python 字符串格式化Python 三引号Unicode 字符串创建 Unicode 字符串Python 的字符串内建函数 Python 字符串格式化 Python中的字符串格式化是指将一个字符串中的占位符替换为指定的值。Python中有多种字符串…...

O2OA(翱途)开发平台系统安全-用户登录IP限制

O2OA(翱途)开发平台[下称O2OA开发平台或者O2OA]支持对指定的用户设置可以连接的客户端计算机的IP地址,以避免用户在不安全的环境下访问系统。本篇主要介绍如何开启O2OA用户登录IP限制。 一、先决条件: 1、O2Server服务器正常运行,系统安装部…...

DirectShowPlayerService::doSetUrlSource: Unresolved error code 0x800c000d

报出这个问题,应该是对给的url解析不正确,我给的是rtsp的视频流地址,应该是对该格式解析异常。 所以参考两篇文: QT无法播放视频:报错:DirectShowPlayerService::doRender: Unresolved error code 0x8004…...

【测试流程及规范】8000字超详细完整版

前言: 首先注明该文由本人原创,转载时需注明出处;团队背景:测试团队加上我一共5名,Java开发10多位,前端3位,产品4位,还有架构工程师、运维等;公司IT团队开发的系统仅供内…...

第十四届蓝桥杯省赛真题 Java C 组【原卷】

文章目录 发现宝藏【考生须知】试题 A \mathrm{A} A : 求和试题 B: 分糖果试题 C: 三国游戏试题 D : \mathrm{D}: D: 平均试题 E \mathrm{E} E : 填充试题 F : \mathrm{F}: F: 棋盘试题 G: 子矩阵试题 H: 公因数匹配试题 I: 异或和之差试题 J : \mathrm{J}: J: 太阳 发现宝…...

v-model 粗略解析

v-model 粗略解析 v-model是什么? 双向数据绑定,可以从data流向页面,也可以从页面流向data通常用于表单收集,v-model 默认绑定 value 值书写形式: v-model:value"" 或 v-model v-model原理是什么&#xf…...

【vue elementUI】修改el-dropdown样式

实现效果如下&#xff1a; 代码如下&#xff1a; <el-dropdown trigger"click" command"handleCommand" active-text-color"#606266"><span class"product-card">{{getCategoryName(categoryId)}}</span><el-dro…...

6语言交易所/多语言交易所php源码/微盘PHP源码

6语言交易所PHP源码&#xff0c;简单测试了一下&#xff0c;功能基本都是正常的。 由于是在本地测试的运行环境的问题&#xff0c;K线接口有点问题&#xff0c;应该在正式环境下是OK的。 源码下载地址&#xff1a;6语言交易所/多语言交易所php源码/微盘PHP源码.zip 程序截图…...

动态规划——传球问题

题目链接&#xff1a;1.传球游戏 - 蓝桥云课 (lanqiao.cn) 本题关键在于动态规划的数组设计&#xff0c;以及围坐一圈时索引的变化。 首先是动态规划&#xff0c;由于是求球传递m次回到第一位同学&#xff0c;那么就可以设计成一个二维数组&#xff0c;每个位置代表的是&#x…...

Spring: 文件服务使用spring.web.resources.static-locations配置实现文件预览功能

文章目录 一、spring.web.resources.static-locations配置实现文件预览功能1、来实现文件预览的步骤2、总结 二、其他的文件预览实现方式1、使用Controller处理文件预览请求2、集成第三方文件预览库3、使用专门的文件预览服务4、配置Nginx等反向代理进行文件预览5、注意事项&am…...

分享常用的62 个九宫格抽奖及各种宫格效果源码

九宫格抽奖及各种宫格效果详细介绍 功演示效果及源码下载地址&#xff1a;https://www.erdangjiade.com/js/17-0-0-0 九宫格抽奖盘是一种常见的抽奖形式&#xff0c;由九个格子组成&#xff0c;每个格子代表一个奖项。抽奖时&#xff0c;指针会随机旋转&#xff0c;最终落在某…...

【Stable Diffusion】入门-03:图生图基本步骤+参数解读

目录 1 图生图原理2 基本步骤2.1 导入图片2.2 书写提示词2.3 参数调整 3 随机种子的含义4 拓展应用 1 图生图原理 当提示词不足以表达你的想法&#xff0c;或者你希望以一个更为简单清晰的方式传递一些要求的时候&#xff0c;可以给AI输入一张图片&#xff0c;此时图片和文字是…...

数学建模-多目标规划算法(美赛建模)

&#x1f49e;&#x1f49e; 前言 hello hello~ &#xff0c;这里是viperrrrrrr~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f4a5;个人主页&#xff…...

安装、配置MySQL

安装相关软件 MySQL Server、MySQL Workbench MySQL Server&#xff1a;专门用来提供数据存储和服务的软件 MySQL Workbench&#xff1a;可视化的 MySQL 管理工具 官网安装 https://www.mysql.com/ 官网 MySQL :: Download MySQL Installer 安装包路径 在这里选择版本和和对应…...

C++面试100问(九)

C中typdef和#define区别&#xff1f; #define是预处理命令&#xff0c;在预处理是执行简单的替换&#xff0c;不做正确性的检查&#xff1b;typedef是在编译时处理的&#xff0c;它是在自己的作用域内给已经存在的类型一个别名。 C中有哪些调试程序的方法&#xff1f; windows…...

出海品牌必备指南:海外网红营销5大底层逻辑解析

随着全球化的推进&#xff0c;品牌出海已经成为许多企业拓展市场的重要策略之一。在这个过程中&#xff0c;海外网红营销成为品牌吸引目标受众、提升知名度的有效工具。然而&#xff0c;要在海外市场取得成功&#xff0c;并不仅仅是找准网红合作伙伴&#xff0c;更需要深入了解…...

Linux/Ubuntu/Debian的终端中和的区别

下边举例说明&#xff1a; “cd /home & wine ps.exe”和“cd /home && wine ps.exe”之间的区别在于命令在类 Unix shell 环境&#xff08;例如 Linux 或 macOS&#xff09;中执行的方式&#xff1a; ‘cd /home & wine ps.exe’: 在此命令中&#xff0c;“…...

docker compose部署opensearch集群

docker compose 配置 假设有两台电脑 A电脑的ip为192.168.1.100 B电脑的ip为192.168.1.103 A电脑的docker compose 配置 version: 3services:opensearch:image: opensearchproject/opensearch:2.1.0container_name: opensearch-node-1environment:- cluster.nameopensearch-c…...

粤嵌6818开发板通过MobaXterm使用SSH连接开发板

链接&#xff1a;https://pan.baidu.com/s/18ISP4Ub1HtQx6jCvTQTUHw?pwdfjmu 提取码&#xff1a;fjmu 1.把SSH_config.tar.bz 下载到开发板中 2.解压 SSH_config.tar.bz 解压命令&#xff1a;tar -xzvf SSH_config.tar.bz 3.配置SSH 进入SSH/openssh目录&am…...

Python实战:Flask轻量级web框架入门

Flask是一个轻量级的Web框架&#xff0c;它是由Armin Ronacher开发的&#xff0c;使用Python语言编写。Flask易于上手&#xff0c;具有高度的可扩展性&#xff0c;非常适合快速开发Web应用程序。 一.Flask简介 Flask是一个基于Werkzeug WSGI工具箱和Jinja2模板引擎的Web框架。…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能&#xff0c;本节首先介绍如何通过 Docker 快速体验 TDengine&#xff0c;然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker&#xff0c;请使用 安装包的方式快…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...

Qemu arm操作系统开发环境

使用qemu虚拟arm硬件比较合适。 步骤如下&#xff1a; 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载&#xff0c;下载地址&#xff1a;https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...

基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)

引言 在嵌入式系统中&#xff0c;用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例&#xff0c;介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单&#xff0c;执行相应操作&#xff0c;并提供平滑的滚动动画效果。 本文设计了一个…...

边缘计算网关提升水产养殖尾水处理的远程运维效率

一、项目背景 随着水产养殖行业的快速发展&#xff0c;养殖尾水的处理成为了一个亟待解决的环保问题。传统的尾水处理方式不仅效率低下&#xff0c;而且难以实现精准监控和管理。为了提升尾水处理的效果和效率&#xff0c;同时降低人力成本&#xff0c;某大型水产养殖企业决定…...

【大模型】RankRAG:基于大模型的上下文排序与检索增强生成的统一框架

文章目录 A 论文出处B 背景B.1 背景介绍B.2 问题提出B.3 创新点 C 模型结构C.1 指令微调阶段C.2 排名与生成的总和指令微调阶段C.3 RankRAG推理&#xff1a;检索-重排-生成 D 实验设计E 个人总结 A 论文出处 论文题目&#xff1a;RankRAG&#xff1a;Unifying Context Ranking…...