Python3 字符串核心知识点

一、字符串基础定义

字符串用单引号 / 双引号包裹,三引号支持多行文本

字符串是不可变序列,每个字符有固定索引(从 0 开始)

python 复制代码
# 基础定义
s1 = 'hello'
s2 = "python"
s3 = '''hello
python'''  # 多行字符串

二、核心操作:索引、切片、拼接、重复

  1. 索引取值
    正索引:从左往右(0 开始)
    负索引:从右往左(-1 为最后一位)
python 复制代码
s = "python"
s[0]   # 'p'
s[-1]  # 'n'(最后一个字符)
  1. 切片(起始:结束:步长
    省略起始:从 0 开始
    省略结束:到末尾
    步长 - 1:字符串逆序
python 复制代码
s = "abcdef"
s[:3]   # 'abc'(前3个)
s[2:]   # 'cdef'(索引2到末尾)
s[::-1] # 'fedcba'(逆序)
  1. 拼接与重复
    拼接:+
    重复:* 数字
python 复制代码
"hello" + " world"  # 'hello world'
"python" * 3        # 'pythonpythonpython'
  1. 长度计算
python 复制代码
len("hello python")  # 12(包含空格)

三、字符串常用方法(高频必背)

  1. 大小写转换
python 复制代码
s = "hello python"
s.upper()       # 全大写:HELLO PYTHON
s.lower()       # 全小写:hello python
s.capitalize()  # 首字母大写:Hello python
s.title()       # 每个单词首字母大写:Hello Python
  1. 去除空白字符
python 复制代码
s = "  python  "
s.strip()   # 去除两端空格:python
s.lstrip()  # 去除左侧空格
s.rstrip()  # 去除右侧空格
  1. 替换与分割
    替换:replace(旧串, 新串)
    分割:split(分隔符) → 返回列表
python 复制代码
"hello java".replace("java", "python")  # 'hello python'
"hello python world".split(" ")         # ['hello','python','world']
  1. 查找与统计
python 复制代码
s = "hello python hello"
s.count("hello")  # 2(统计子串出现次数)
s.find("t")      # 2(查找第一次出现的索引,找不到返回-1)
  1. 拼接列表(join)
python 复制代码
lst = ['a','b','c']
"".join(lst)  # 'abc'

四、判断方法(返回布尔值)

python 复制代码
"123".isdigit()   # True(是否纯数字)
"abc".isalpha()  # True(是否纯字母)
"Hello".startswith("H")  # True(是否以指定字符开头)
"python".endswith("n")   # True(是否以指定字符结尾)
"o" in "hello"    # True(判断子串是否存在)

五、字符串格式化(推荐写法)

  1. f-string(最简单常用)
python 复制代码
name = "张三"
age = 18
print(f"我叫{name},今年{age}岁")
  1. format 方法
python 复制代码
print("我叫{},今年{}岁".format(name, age))

六、遍历与字符处理

python 复制代码
# 遍历字符串
s = "python"
for char in s:
    print(char)

# 分离字母和数字
s = "a1b2c3"
letters, digits = "", ""
for i in s:
    if i.isalpha(): letters += i
    elif i.isdigit(): digits += i
# 结果:letters=abc,digits=123

七、转义字符处理

取消转义:加\ 或 使用原始字符串r''

python 复制代码
print("hello\\npython")
print(r"hello\npython")  # 推荐

总结

核心操作:索引、切片、拼接、len ()

必背方法:upper()/lower()/strip()/replace()/split()/join()

高频判断:in、isdigit()、isalpha()、startswith()、endswith()

格式化优先用 f-string,简洁高效

字符串不可变,所有修改操作均返回新字符串

相关推荐
兵慌码乱18 小时前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
luckdewei20 小时前
FastAPI 资产管理系统实战:复杂 ORM 关联、Alembic 迁移与 N+1 查询优化
python
aqi001 天前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn1 天前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python
金銀銅鐵2 天前
[Python] 从《千字文》中随机挑选汉字
后端·python
cup112 天前
[技术复盘] Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南
python·ai·环境变量·ci·nuitka·skill
aqi002 天前
15天学会AI应用开发(七)有了大模型为什么还要引入RAG
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵2 天前
用 Python 实现 Take-Away 游戏
python·游戏