ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Python字符串完全指南:Python Essential Training 切片、f-string格式化与多行字符串实战手册

Python字符串完全指南:Python Essential Training 切片、f-string格式化与多行字符串实战手册

【免费下载链接】python-ET-4314028

This repo is for linkedin learning course: Python Essential Training (UPDATE FY24 Q4)

项目地址:https://gitcode.com/gh_mirrors/py/python-ET-4314028
点击查看免费下载

本文是 Python 字符串(string)的完整实战指南,配套 LinkedIn Learning 课程项目 Python Essential Training(python-ET-4314028)。你将快速掌握 Python 字符串切片、f-string 格式化与多行字符串三大核心技能,并学会用 Jupyter Notebook 动手练习。

📚 本仓库是课程Python Essential Training的官方练习库,所有示例都可以在 exercise_files/ 目录下找到对应的 Notebook 文件。

一、为什么字符串是 Python 学习的第一站?

字符串是 Python 中最常用的数据类型,几乎每个程序都离不开它:打印输出、拼接信息、解析文件、拼接路径……而 Python 字符串的三大"杀手锏"就是:

技能一句话理解典型场景
🍕 切片(Slicing)像切蛋糕一样截取子串提取文件名后缀、截取用户名
✨ f-string 格式化在字符串里直接嵌入变量和表达式拼接日志、输出结果
📄 多行字符串三引号包起整段文本写 SQL、模板、提示信息

本节内容全部来自课程练习文件 03_04_Strings.ipynb,先克隆仓库再用 Jupyter 打开即可逐段运行。

二、Python 字符串切片:3 步上手索引与截取

2.1 索引:从 0 开始数

Python 中字符串的每个字符都有一个"门牌号",从 0 开始:

name = 'My name is Ryan Mitchell' print(name[0]) # M print(name[1]) # y

也可以用负数从末尾倒数,比如name[-1]就是最后一个字符。

2.2 切片语法:字符串[起点:终点]

切片是 Python 字符串最强大的特性,语法为s[start:stop],包含起点、不包含终点:

name[0:7] # 'My name' name[:7] # 'My name'(省略起点,从开头开始) name[11:] # 'Ryan Mitchell'(省略终点,取到末尾)

💡 小技巧:切片规则对 list 同样有效,例如myList[2:4]返回[3, 4]。

2.3 常用搭配:len()求长度

想知道字符串有多长?用内置函数len():

len(name) # 24

三、f-string 格式化:最优雅的 Python 字符串拼接方式

3.1 三种拼接方式对比

把变量"塞进"字符串有三种主流写法,效果相同,优雅程度不同:

方式代码示例结果
字符串拼接'My number is: ' + str(5)'My number is: 5'
f-string(推荐 ✨)f'My number is: {5}''My number is: 5'
format()'Pi is: {}'.format(math.pi)'Pi is: 3.141592653589793'

f-string 在字符串前加一个字母f,就能在大括号{}里直接写变量,甚至写表达式:

f'My number is: {5} and twice that is {2*5}' # 'My number is: 5 and twice that is 10'

3.2 格式说明符:控制小数位数

在{}内用:后面跟格式代码,可以精确控制输出格式。课程中的经典例子是保留两位小数的 π:

import math f'Pi is: {math.pi:.2f}' # 'Pi is: 3.14'

.2f表示"保留 2 位小数的浮点数",这是数据报表、日志输出中最常用的写法之一。

四、多行字符串:用三引号搞定长文本

单行字符串写不下整段文本怎么办?用三引号'''包裹,换行和缩进都会原样保留:

myString = ''' Here is a long block of text I can add newlines! the text doesn't stop until it sees ''' ''' print(myString)

⚠️ 注意:文本要一直持续到遇到结束的三个引号才停止,所以多行字符串内部可以安全地包含单引号,这正是写 SQL 语句、HTML 模板、用户提示信息的利器。

五、实战演练:十六进制转十进制(Challenge 挑战)

学完切片就能上手真正的实战了。课程第 3 章的 Challenge 要求你:把十六进制字符串(如'ABC')转换为十进制整数。

💡 解题三步走:

  1. 查长度:len(hexNum)知道字符串几位
  2. 逐位取值:hexNum[0]、hexNum[1]……切片语法派上用场
  3. 判断合法性:用for char in myString循环检查每个字符是否是合法的十六进制字符

完整提示见 03_06_Challenge_Hints.ipynb,其中还展示了 f-string 在错误提示中的应用:

if char not in hexNumbers: print(f'{char} is not a hex character!')

做完这道题,字符串切片、f-string 就都串起来了。🎯

六、进阶一瞥:从 string 到 bytes

字符串在内存中本质是字节序列。课程 03_05_bytes.ipynb 展示了一个有趣的例子:把表情符号'🙄'编码为 UTF-8 字节后修改一个字节,解码后竟然变成了'🙅':

smileyBytes = bytes('🙄', 'utf-8') smileyBytes.decode('utf-8') # '🙄'

理解 string 与 bytes 的转换(encode/decode),是后续处理网络数据、读写文件的必经之路。

七、学习路线与练习清单

按以下顺序练习,1 小时即可通关 Python 字符串:

  • ✅ 02_01_Basic_Data_Types.ipynb:认识字符串是基本数据类型之一
  • ✅ 03_04_Strings.ipynb:切片、f-string、多行字符串(本文主角)
  • ✅ 03_05_bytes.ipynb:字符串与字节的转换
  • ✅ 03_06_Challenge_Hints.ipynb:十六进制转换综合挑战
  • 📖 reference_guide.ipynb:课程参考手册,遇到遗忘随时查阅

💪 提示:Jupyter 环境搭建遇到问题?仓库附带了 installation_troubleshooting.pdf 故障排查手册,安装 Python、pip 和 Jupyter Notebook 的常见问题这里都有答案。

八、总结:记住这 3 个要点就够了

  1. 切片:s[start:stop],含头不含尾,可省略任意一端——Python 字符串截取就这么简单;
  2. f-string:字符串前加f,{变量}嵌内容,{变量:.2f}控精度——比+拼接优雅十倍;
  3. 多行字符串:三引号包裹,换行原样保留——长文本写起来毫无压力。

打开 exercise_files/03_04_Strings.ipynb 动手跑一遍,Python 字符串就真正属于你的了。🚀

【免费下载链接】python-ET-4314028

This repo is for linkedin learning course: Python Essential Training (UPDATE FY24 Q4)

项目地址:https://gitcode.com/gh_mirrors/py/python-ET-4314028
点击查看免费下载
上一篇:Vista.js 安全实践清单:认证防护、完整性校验与中间件加固指南
下一篇:wifit3 pcap回放工具完整指南:如何把内核驱动行为变成可重放的离线测试

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

返回列表