Python中的字符串

常见字符串的形式

单引号字符串

用单引号括起来的字符序列,如 'hello' 、 '123' 、 '!' 等,单引号内可以包含除单引号之外的任意字符。若要在其中使用单引号,需用反斜杠 \ 转义,如 'It\'s a dog' 。

小插曲:


如果想在字符串中包含一些特
殊的字符,例如换行符、制表
符等,在普通字符串中就需
要转义,前面要加上反斜杠
(\ ) ,这叫作 字符转义。

双引号字符串

由双引号包围的字符内容,像 "world" 、 "456" 、 "@#$" 等。与单引号字符串类似,双引号内可包含除双引号外的任意字符,若要使用双引号则需转义,如 "She said \"Hello\"" 。单引号和双引号定义的字符串在功能上基本相同,选择哪种主要取决于个人习惯或字符串内容。

三引号字符串

由三个连续的单引号或双引号组成,即 '''...''' 或 """..." 。可用于表示跨多行的字符串,也常用于在代码中添加多行注释,或作为函数、类的文档字符串,用于描述其功能、参数、返回值等信息。

原始字符串

在字符串前加 r 或 R 表示,如 r'C:\path\to\file' 。其中的反斜杠不会被当作转义字符处理,会按原始字符对待,常用于处理文件路径、正则表达式等可能包含大量反斜杠的字符串。

字符串与数字的相互转换

将字符串转换为数字

将字符串转换为数字,可以使用 int() 和float() 实现,如果成功则返回数字,否则引发异常。

转换为整数:使用 int() 函数。若字符串为合法的整数形式,可直接转换,如 int("123") 结果为123。还可指定进制,如 int("101", 2) 将二进制字符串"101"转换为十进制整数5。
转换为浮点数:利用 float() 函数,能将合法的数字字符串转换为浮点数,像 float("3.14") 得到3.14, float("1e-2") 会得到0.01。
转换为复数:使用 complex() 函数, complex("1+2j") 可将字符串形式的复数转换为复数对象1+2j。

数字转换为字符串

使用 str() 函数:可将整数、浮点数、复数等转换为字符串。如 str(123) 得到"123", str(3.14) 得到"3.14", str(1+2j) 得到"(1+2j)"。

格式化字符串:通过 f-string 、 format() 方法等格式化字符串来实现转换。 f-string 示例为 num = 123; f"数字是{num}" ,结果为"数字是123"。 format() 方法示例为 "数字是{}".format(456) ,结果为"数字是456"。

特定格式转换:使用 bin() 、 oct() 、 hex() 函数可将整数转换为对应的二进制、八进制、十六进制字符串。如 bin(10) 得到"0b1010", oct(10) 得到"0o12", hex(10) 得到"0xa"。

相关推荐
IVEN_5 小时前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang6 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮7 小时前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python
千寻girling7 小时前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python
AI攻城狮10 小时前
用 Playwright 实现博客一键发布到稀土掘金
python·自动化运维
曲幽10 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
YuMiao11 小时前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python