名牌工坊
通过水晶门后,Hoppy 来到名牌工坊。这里的每块通行名牌都要先擦亮、看清标记,再挂到冒险背包上。前面你已经刷过边缘、换过小符文,也判断过字符串两头的信号。
现在桌上有一块还没整理好的名牌:" badge: hoppy-hopper "。这次不是新咒语课,而是一节轻 checkpoint:把前面学过的几个文字小动作串起来,做出一块真正能展示的名字。
先看一眼这串小动作会得到什么
这节课最重要的体验,不是学一个新名字,而是第一次把几步轻动作接起来:先清边缘,再看开头信号,最后把名牌整理成更适合展示的样子。
raw_label = " badge: moss-runner "
print("Before:", "[" + raw_label + "]")
clean_label = raw_label.strip()
has_badge_prefix = clean_label.startswith("badge:")
display_label = clean_label.replace("badge: ", "").replace("-", " ")
print("Starts with badge:", has_badge_prefix)
print("Display:", "[" + display_label + "]")
运行后,你会同时看到三件事:原始名牌前后还有空空的边、前缀判断是 True、最后展示出来的名字变成了 hoppy hopper。这就是本章前段的小回顾:边缘能先清,开头能先看,中间的小片段也能顺手修掉。
把熟悉动作串成一个轻组合
这一课不用再学新核心知识。你只是把已经见过的动作轻轻接起来:strip() 负责把首尾空白刷掉,startswith() 负责确认这块名牌是不是带着你要的开头,replace() 再把里面碍事的小片段换成更适合展示的样子。
以后当你拿到一条“差不多能用、但还没完全整理好”的文本时,可以先问自己:要不要先清边缘?要不要先看开头信号?要不要再把最后那一小块修顺?这节课先把这条轻链路练熟就够了。
starter 已经把原始名牌和输出行摆好了。你这次真正要补上的,是 clean_nameplate、has_badge_prefix 和 display_name 这三行。
先用 raw_nameplate.strip() 得到干净一些的版本,再在这个清理后的字符串上用 startswith("badge:") 做轻判断。
用 replace() 去掉 badge: 这块前缀,再把连字符 - 换成空格。运行后,对照 before / display,确认你真的把粗糙名牌整理成了能展示的版本。
因为这节课不只是要做出最终名字,还要顺手确认:这条名牌本来是不是带着 badge: 这个开头信号。checkpoint 课要守住的,不只是最后结果,还有你会不会做这种轻判断。
参考答案点击展开点击收起
raw_nameplate = " badge: hoppy-hopper "
print("Before:", "[" + raw_nameplate + "]")
clean_nameplate = raw_nameplate.strip()
has_badge_prefix = clean_nameplate.startswith("badge:")
display_name = clean_nameplate.replace("badge: ", "").replace("-", " ")
print("Starts with badge:", has_badge_prefix)
print("Display:", "[" + display_name + "]")高级技巧想更进一步?点击展开点击收起
程序员有时会把这种事叫做一次很小的“格式化整理”:把原始字符串收拾成更适合展示的版本。这里先不用学新的格式化语法,动作本身更重要。
这一章前段你已经刷过边缘、换过小片段、看过字符串边缘信号。现在你多带走一个判断就够了:当一条文本已经差不多能用时,很多时候只要把几下轻动作串起来,它就能变成一个更整齐的最终输出。