大朋友小朋友好!前几天咱们带孩子搞懂了字符串的“总人数(长度)”和“座位号(索引)”,孩子们是不是已经玩得不亦乐乎了?
今天,咱们继续在 Python 的字符串世界里挖宝。这次带回来的两个知识点,听起来有点程序员的“黑话”感觉——一个叫“字符串截取”,另一个叫“转义字符与长字符串”。
别看名字挺唬人,用大白话跟孩子一讲,他们绝对秒懂!快搬好小板凳,咱们开讲啦!
🍰 魔法一:一把神奇的“切蛋糕刀” —— 字符串截取
平时吃蛋糕,咱们得切着吃;其实在 Python 里,一长串文字也能“切”着拿!
比如,我们有一大串很长的文字,如果只要其中的一小段怎么办? 以前咱们可能会让孩子用 while 循环一个字一个字去抓,写起来特别累,代码也长。
现在,Python 给了我们一把极其厉害的专用切刀,格式长这样:
👉 result = string[start:end:step]
跟孩子怎么解释这几个英文单词呢?我们可以把它比作“切切乐”的通关指令:
string:就是你要切的那串大文字(字符串本身)。
start(起点):从哪个座位号开始切。如果不写,电脑默认从最开始的 0 号座位切起。
end(终点):切到哪个座位号结束。如果不写,默认一直切到最后。这里有个特别容易踩的坑(必考点):它是“包头不包尾”的! 也就是说,如果你写了终点是 8,它其实只切到 7 号座位,8 号座位上的人它是不碰的。
step(步长):也就是隔几个拿一个。默认是 1,就是挨个拿;如果写 2,那就是跳着隔一个拿一个。
不信?带孩子来敲段代码试一下:
text = "子曰:学而时习之,不亦说乎?"
# 我们想把“学而时习之”切出来
# 带着孩子数一数座位号:“学”字在 3 号座位
# “之”字在 7 号座位。因为“包头不包尾”,终点我们要写 8!
print(text[3:8]) # 屏幕上就会稳稳出现:学而时习之!
🧙♂️ 魔法二:给字符穿上“变身斗篷” —— 转义字符
在编程时,有些符号特别调皮。比如你想让电脑打印一句话:小明说:"Python太好玩了!"如果我们在代码里用单引号包裹双引号还没事,但如果不小心外面用了双引号,里面也用了双引号,电脑就会彻底晕过去。
这时候,反斜杠 \ 这个“魔术师”就登场了!它的作用就是“转义”,大白话就是:暂时取消符号本来的脾气,让它变个身,代表新的意思!
看看它能把普通的符号变成什么奇妙的技能:
\' 和 \":让英文的单引号和双引号乖乖变成普通文本,再也不会让代码报错。(如果是中文的引(“”)号,人家本来就很乖,不需要加反斜杠!)
\n:超级常用!它是换行符,就像我们在键盘上按了“回车键”,后面的字会直接跳到下一行。
\t:横向制表符,相当于按了键盘上的 Tab 键,能一下空出好几个空格,让排版整整齐齐。
\\:如果我就是想在屏幕上打出一个纯纯的反斜杠 \ 怎么办?那就两个反斜杠一起写,第一个会把第二个“保护”起来输出。
\:如果一行代码太长了屏幕装不下,在结尾加个 \,就能告诉电脑“下面一行和我是好兄弟,连在一起的”,这就是续行符。
\a:这个最好玩,是响铃符!代码运行到它,电脑真的会“叮”地响一声,可以用来给孩子写个小闹钟程序!
\b:退格符,就像按了键盘上的退格键,会让左边的字符被吃掉一格。
\r:回车符,它会把 \r 后面的内容直接移到最前面,把开头的字逐一替换掉。
让孩子试试这行魔法代码:
print("第一行\n第二行\t这里空了好多格!\a")
# 运行一下,不仅换行、空格,电脑可能还会冲你“叮”地叫一声哦!📦 魔法三:超级无敌大盒子 —— 长字符串
如果孩子想在代码里写一首完整的古诗,比如《静夜思》,每一句都要换行。如果用上面的 \n,那代码得写成:"床前明月光,\n疑是地上霜。\n举头望明月……",密密麻麻看起来太累了。
别急,Python 还留了一招:长字符串。 只要用三个单引号 ''' 或者三个双引号 """ 把文章包起来,你在软件里怎么按回车、怎么换行,打印出来就长什么样!它就像一个神奇的大盒子,完美保留你手敲的所有排版格式。
poem = '''
床前明月光,
疑是地上霜。
举头望明月,
低头思故乡。'''
print(poem) # 打印出来就是一首整整齐齐的、带换行的诗!
📝 今日带娃成就卡
今天咱们带孩子解锁了字符串里最酷的三个进阶玩法:
切片刀([]):学会了用 [起点:终点:步长] 的公式自由切蛋糕,记住了“包头不包尾”。
变身衣(\):搞懂了反斜杠的转义功能,尤其是见到了神奇的 \n(换行)和 \a(响铃)。
大盒子(三引号):写大段文字、写诗再也不用发愁排版了。