Python字符串str基础详解:编码、格式化与常用操作

Mia
Mia
发布时间:2026-10-15| 2人浏览过
原创

本文详解Python中字符串str的核心概念,涵盖字符编码原理(ASCII、Unicode、UTF-8)及ord/chr函数用法。重点讲解字符串格式化两种主流方式(%占位符与format),并系统介绍字符串的数学运算、成员检测、索引访问及切片技巧,帮助开发者掌握字符串处理基础。

字符串str:

定义:是由一系列字符组成的不可变序列容器,储存的是字符的编码值

编码:

1、字节byte:计算机最小储存单位,等于8位bit 2、 字符:单个的数字,文字与字符 3、 字符集(码表):存储字符与二进制序列的对应关系 4、 编码:将字符转换为对应的二进制序列的过程 5、 解码:将二进制序列转换为对应的字符的过程 6、 编码方式:

ASCLL编码:包含英文,数字等字符,每个字符1个字节 GBK编码:兼容ASCLL包含21003个中文;英文1个字节,汉子2个字节 Unicode:国际统一编码,旧字符集每个字符2个字节,新字符集4个字节 UTF-8编码:Unicode的存储与传输方式,英文1字节,中文3个字节。

ord(字符串)和chr(整数):

1、 ord(字符串):返回改字符串的Unicode码

2、 chr(整数):返回改整数对应的字符串


'''
   str编码
'''
# 字符-->数字
num01 = ord("a")
print(num01)  # 97

# 数字-->字符
str01 = chr(97)
print(str01) # a

练习1.在控制台中,获取一个字符穿,打印每一个字符的编码值


str01 = input("请输入一个字符串:")
for item in str01:
    print(ord(item))

输出结果:
请输入一个字符串:string
115
116
114
105
110
103

练习2:在控制台中,重复录入一个编码值,然后打印字符

如果输入空字符串,则退出程序


while True:
    str_code = input("请输入编码值:")
    if str_code == "":
        break
    code_value = int(str_code)
    print(chr(code_value))

结果输出:
请输入编码值:15

请输入编码值:125
}
请输入编码值:100
d
请输入编码值:301
ĭ
请输入编码值:

字符串字面值:

**单引号和双引号的区别**

1、 单引号内的双引号不算结束符


message = '我叫"苏大强"'

2、 双引号内的单引号不算结束符


message = "我叫‘苏大强'"

转义符 在需要在字符中使用特殊字符时,python 用反斜杠 \ 转义字符。

字符串格式化

字符串的格式化方法分为两种,分别为占位符(%)和format方式。占位符方式在Python2.x中用的比较广泛,随着Python3.x的使用越来越广,format方式使用的更加广泛。

定义:生成一定格式的字符串 语法:字符串%(变量) 编码类:%s 字符串 ,%d整数, %f浮点数

练习1.在字符串中插入变量,请输入1+2=?


a = "1"
a = "1"
b = "2"
str01 = "请输入" + a + "+" + b + "=?"
str02 = "请输入%s+%f=?" %("1",10.5)
str03 = "请输入%s+%f=?" % ("1",10.5)
print(str01)
print(str02)
print(str03)

输出结果:
请输入1+2=?
请输入1+10.500000=?
请输入1+10.500000=?

字符串通用操作

数学运算符

”+“ :用于拼接两个容器
”+=“ :用原容器与右侧容器拼接,并重新绑定变量
”*“ :重复生成容器元素
“*=” :用原容器生成重复元素,并重新绑定变量
”< <= > >= == !=“

str01 = "悟空"
str02 = "八戒"
# 字符串拼接
str03 = str01 + str02
# 字符串累加
str01 += str02
print(str01)
# 重复生成元素
print(str02 * 3)
str02 *= 3
print(str02)
# ”< <= > >= == !=“ 一次比较两个容器中元素,一单不同则返回比较结果

成员运算符

1.语法: 数据 in 序列 数据 not in 序列 2.作用: 如果在指定的序列中找到值,返回bool类型


print("我叫" in "我叫齐天大圣")
print("我叫" not in "我叫齐天大圣")

输出结果:
True
False

索引inedx

1.作用 访问容器元素 2.语法: 容器[整数] 3.说明: 正向索引从0开始,第二索引为1 反向索引从-1开始,代表最后一个



message = "我叫齐天大圣"
# 获取正书第三个字
print(message[3])
# 获取最后一个字
print(message[-1])

输出结果
天
圣

切片slice

1.作用: 从容器中取相应的元素从新组成一个新的容器 2.语法: 容器[(开始索引):(结束索引) :(步长)] 3.说明: 小括号()括起的部分代表可省略 结束索引不包含该位置元素 步长是切片每次获取完当前元素后移动的偏移量



message = "我叫齐天大圣"
print(message[0:1])
# 开始值默认为开头
print(message(:2))
#结束值默认为末尾
print(message[-2:])
print(message[:])

输出结果:
我
我叫
大圣
我叫齐天大圣

内建函数

到此这篇关于python基础字符串str详解的文章就介绍到这了,更多相关python字符串str内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。