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,简洁高效

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

相关推荐
李妍.17 分钟前
02Numpy基础(上)
开发语言·python
TheBestRucy19 分钟前
Python 九阳神功之贰:面向对象(下)
开发语言·python
2601_9659584643 分钟前
口腔黏膜脱皮超2周未愈建议及时就医
人工智能·python
AI_小站1 小时前
刚面完百度的 Agent 开发岗,我才发现:世界就是个巨大的草台班子
java·开发语言·人工智能·spring·百度·langchain
微小冷2 小时前
在不同空间中展示数据(欧式、球面、庞加莱圆盘)
python·双曲空间·微分几何·geomstats·庞加莱圆盘·球面
felixking2 小时前
C++20 协程
开发语言·c++·协程
weixin_431600442 小时前
Agent Workflow 学习向:Code 节点,比模板更强的变量加工
后端·python·学习·ai·
讲温控就好了2 小时前
从医疗影像到能源存储——芯片冷却温控技术的跨行业赋能
人工智能·python·能源
DeepVisionary3 小时前
从 Qwen3.8-27B 把原生多模态、原生 FP8、桌面级 Agent 三件事一次集齐,看开源大模型的“工业化拐点“
python·自动化
Zane1994123 小时前
CAS 与原子类:Java 如何实现无锁编程
java·开发语言