Python字符串操作精要 | 从基础到实战的3大核心技能
一、字符串操作的重要性
字符串作为编程中最常用的数据类型,承担着:
- 用户输入输出处理(如登录注册)
- 文本数据处理(如日志分析)
- 文件路径操作(如自动化脚本)
本文将详解字符串长度计算、转义符妙用、格式化输出三大核心技能,附实用代码示例。
二、字符串长度计算:len()函数
基础用法速查
s = "hello yuan"
print(len(s)) # 输出:10(包含空格)
不同数据类型的长度表现
| 数据类型 | 示例 | len()结果 | 说明 |
|---|---|---|---|
| 普通字符串 | "Python" |
6 | 计算字符数量 |
| 含空格的字符串 | "hello world" |
11 | 空格计入长度 |
| 空字符串 | "" |
0 | 特殊边界情况 |
| 列表 | [1, "a", True] |
3 | 计算元素个数 |
🛠️ 实战场景:密码强度验证
password = input("请输入密码:")
if len(password) < 8:
print("⚠️ 密码长度需至少8位!")
else:
print("✅ 密码长度符合要求")
三、转义符:让字符串更智能
常用转义符大全
| 转义符 | 功能说明 | 示例 | 输出结果 |
|---|---|---|---|
\n |
换行 | "A\nB" |
A B |
\t |
制表符(缩进) | "Name\tAge" |
Name Age |
\\ |
反斜杠字面量 | "C:\\new" |
C:\new |
\' |
单引号字面量 | 'Let\'s go' |
Let's go |
\" |
双引号字面量 | "\"重要\"" |
"重要" |
🎯 两种处理路径的特殊方式
方式1:双反斜杠转义
path = "C:\\Users\\Yuan\\Documents\\test.txt"
print(path) # C:\Users\Yuan\Documents\test.txt
方式2:原始字符串(推荐)
path = r"C:\Users\Yuan\Documents\test.txt"
print(path) # 效果同上,更简洁
四、格式化输出:让数据展示更优雅
1. 传统%格式化(Python2风格)
name = "张伟"
age = 28
height = 175.5
# 多类型混合格式化
intro = "姓名:%s | 年龄:%d岁 | 身高:%.1fcm" % (name, age, height)
print(intro)
格式说明符:
%s字符串%d整数%f浮点数(可控制小数位:%.2f)
2. 现代f-string格式化(Python3.6+推荐)
# 支持表达式计算和函数调用
price = 99.8
quantity = 3
print(f"总价:{price * quantity:.2f}元") # 输出:总价:299.40元
# 调用内置方法
name = "alvin"
print(f"大写:{name.upper()}") # 输出:大写:ALVIN
3. 两种方式对比
| 特性 | %格式化 | f-string |
|---|---|---|
| 可读性 | 一般 | 优秀 |
| 执行速度 | 较慢 | 更快 |
| 支持表达式 | 不支持 | 支持 |
| 版本兼容 | Python2/3 | Python3.6+ |
五、综合实战:用户信息录入系统
# 收集用户信息
username = input("请输入用户名:").strip()
age = int(input("请输入年龄:"))
email = input("请输入邮箱:")
# 信息校验
if not (5 <= len(username) <= 12):
print("❌ 用户名需5-12个字符")
elif not (12 <= age <= 60):
print("❌ 年龄需在12-60岁之间")
elif "@" not in email:
print("❌ 邮箱格式不正确")
else:
# 格式化输出
info = f"""
======= 用户信息 =======
用户名:{username.center(10)}
年龄:{age}岁
邮箱:{email.lower()}
=======================
"""
print(info)
六、总结与思维导图
知识体系
字符串操作核心
├─ 长度计算 → len()
├─ 转义符 → \n \t \\ 和 r""
└─ 格式化 → % (传统) vs f-string (现代)
避坑指南
- 中文长度问题:
len("中文")结果为2,每个汉字算1个字符 - 原始字符串限制:
r"\""会报错,需用r'"'或r\" - 类型匹配:
%d不能格式化浮点数,需先转换类型
练习任务:
编写一个程序,要求用户输入文件路径,使用字符串操作:
- 验证路径是否以
.txt结尾- 将路径中的反斜杠统一替换为正斜杠
- 提取文件名(不含路径和扩展名)
欢迎在评论区提交你的代码实现!下期我们将深入探讨Python列表的高级操作技巧。

浙公网安备 33010602011771号