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

Python入门教程之字符串类型

Python入门教程:https://www.bilibili.com/video/BV1rmGczpEbG


字符即文字和符号的统称。
字符串类型即由若干字符组成的序列,以"str"表示。


字符串表示

字符串必须使用一组引号包裹,可以使用的引号包括:单引号、双引号
使用两种引号包裹的字符串之间几乎没有区别,通常习惯使用单引号来包裹字符串

s1 = '你好,世界!'  # 单引号
s2 = "你好,世界!"  # 双引号print(s1)  # 你好,世界!
print(s2)  # 你好,世界!

字符串必须使用相同类型的引号包裹,单引号和双引号不能混合使用

# s1 = '你好,世界!"  # 错误,引号不匹配
# s2 = "你好,世界!'  # 错误,引号不匹配

使用单引号或双引号包裹的字符串不能跨行

# s1 = '你好,
# 世界!'  # 错误,字符串跨行# s2 = "你好,
# 世界!"  # 错误,字符串跨行

转义字符

转义字符即会被替换成其他字符的特殊字符,通常用于表示特殊符号
可以使用转义符""与其他字符组合形成转义字符

转义字符描述
单引号
"双引号
\n换行符
\t制表符
\反斜杠

引号

可以使用转义字符"'“和”""在字符串中间接表示单引号和双引号

s1 = '\''  # 单引号
s2 = '\"'  # 双引号print(s1)  # '
print(s2)  # "

换行符

通常,字符串为单行,可以通过换行符让字符串换行,换行符之后的字符串将在下一行
可以通过转义字符"\n"在字符串中间接表示换行符

s1 = '你好,世界!'
s2 = '你好,\n世界!'  # 换行符print(s1)  # 你好,世界!
print(s2)  # 你好, 世界!

制表符

通常,字符串以4个字符为一组,可以通过制表符让字符串对齐,制表符之后的字符串将在下一组
可以通过转义字符"\t"在字符串中间接表示制表符

s = '123456789'
s1 = '\t1'  # 制表符
s2 = '12\t3'  # 制表符
s3 = '1234\t5'  # 制表符print(s)   # 123456789
print(s1)  #     1
print(s2)  # 12  3
print(s3)  # 1234    5

反斜杠

反斜杠在字符串中会被解释为转义符,可以通过转义字符"\"在字符串中间接表示反斜杠

s1 = '\t'
s2 = '\\t'  # 反斜杠print(s1)  # 	
print(s2)  # \t

原始字符串

原始字符串即其中的转义字符不会被替换成其他字符的字符串
在字符串的引号前加上前缀"r"表示该字符串为原始字符串,前缀"r"不区分大小写

s1 = '\t'
s2 = r'\t'  # 原始字符串print(s1)  # 	
print(s2)  # \t

引号嵌套

使用单引号包裹的字符串中不能直接出现单引号,使用双引号包裹的字符串中不能直接出现双引号

# s1 = '''  # 错误,出现单引号
# s2 = """  # 错误,出现双引号

可以交替使用引号以解决引号嵌套问题
字符串中存在单引号时就使用双引号包裹,存在双引号时就使用单引号包裹

s1 = "'"
s2 = '"'print(s1)  # '
print(s2)  # "

也可以使用转义字符来解决引号嵌套问题

s1 = '\''
s2 = "\""print(s1)  # '
print(s2)  # "

原始字符串中依然可以使用转义字符来解决引号嵌套问题

s1 = r'\''
s2 = r"\""print(s1)  # \'
print(s2)  # \"

格式化字符串

格式化字符串即可以插入变量的字符串
在字符串的引号前加上前缀"f"表示该字符串为格式化字符串,前缀"f"不区分大小写
在格式化字符串中可以使用"{变量名}"的形式将变量中的数据插入到字符串中

name = '世界'
msg = f'你好,{name}!'  # 格式化字符串
print(msg)  # 你好,世界!

在格式化字符串中不能单独出现"{“、”}“和”{}"

# s1 = f'{'  # 错误,缺失右大括号
# s2 = f'}'  # 错误,缺失左大括号
# s3 = f'{}'  # 错误,缺失变量名

如果要在格式化字符串中出现"{“、”}“、”{}“则需要使用”{{“、”}}“、”{{}}"这样的形式

s1 = f'{{'
s2 = f'}}'
s3 = f'{{}}'print(s1)  # {
print(s2)  # }
print(s3)  # {}

多行字符串

字符串除了可以使用单引号和双引号包裹之外,还可以使用三个单引号或三个双引号包裹
使用三引号包裹的字符串称为多行字符串,相较于普通字符串,多行字符串可以跨行
分别使用两种三引号包裹的字符串之间几乎没有区别,通常习惯使用三个单引号来表示多行字符串

s1 = '''你好,
世界!'''  # 多行字符串
s2 = """你好,
世界!"""  # 多行字符串print(s1)  # 你好, 世界!
print(s2)  # 你好, 世界!

多行字符串中也可以出现转义字符

s = '''你好,\n世界!'''  # 转义字符
print(s)  # 你好, 世界!

多行字符串也可以作为原始字符串

s = r'''你好,\n世界!'''  # 原始字符串
print(s)  # 你好,\n世界!

多行字符串也可以作格式化字符串

name = '世界'
s = f'''你好,{name}!'''  # 格式化字符串
print(s)  # 你好, 世界!

空字符串

空字符串即没有内容的字符串

s = ''  # 空字符串
print(s)  # 

空白符即类似于空格、制表符、换行符这样的不会直接显示的字符,只包含空白符的字符串不是空字符串

s1 = ' '  # 非空字符串
s2 = '\t'  # 非空字符串
s3 = '\n'  # 非空字符串print(s1)  #  
print(s2)  #	
print(s3)  #  
http://www.dtcms.com/a/352382.html

相关文章:

  • 日语学习-日语知识点小记-构建基础-JLPT-N3阶段(20):文法+单词第7回2
  • iPhone 17 Pro 全新配色确定,首款折叠屏 iPhone 将配备 Touch ID 及四颗镜头
  • 【测试需求分析】-需求类型的初步分析(二)
  • 【NuGet】引用nuget包后构建项目简单解析
  • day41-动静分离
  • 数字时代下的智能信息传播引擎
  • 仿真干货|解析Abaqus AMD的兼容与并行效率问题
  • 基于硅基流动API构建智能聊天应用的完整指南
  • 使用QML的Rectangle组件的边框属性
  • `stat` 系统调用详解
  • 学习碎片02
  • Firefox Relay 体验
  • Redis支持事务吗?了解Redis的持久化机制吗?
  • 面试八股文之——Java集合
  • 115、【OS】【Nuttx】【周边】效果呈现方案解析:重定向命令
  • Python编程快速上手—让繁琐工作自动化
  • 论文阅读-CompletionFormer
  • (我与爬虫的较量)码上爬第5题
  • JDK 8 → JDK 17 升级说明书(面向 Spring Boot / Spring Cloud / Spring )
  • Filter过滤器入门
  • android 事件处理源码
  • 当 AI 走进日常:除了聊天机器人,这些 “隐形应用” 正在改变我们的生活
  • 报告:2025机器人技术产业化研究|附130+份报告PDF、数据仪表盘汇总下载
  • 直播到AI助教:在线教育系统源码如何重塑知识付费平台生态?
  • 算法练习——26.删除有序数组中的重复项(golang)
  • 电影感氛围人像风光摄影后期Lr调色教程,手机滤镜PS+Lightroom预设下载!
  • 抖音多账号管理平台哪家比较好?
  • 力扣 30 天 JavaScript 挑战 第40天 (第十一题)对纯函数和记忆函数有了更深理解
  • ABC420A-E题解
  • Zynq开发实践(FPGA之verilog仿真)