🐸

破碎句子

数据与文本工具python-data-tinkerer-02-the-broken-sentence
奖励: 80 XP
|

破碎句子

上一课,我们把便条边缘的灰刷掉了。现在那条提示在灯笼下亮了起来,但它还是一整条封住的文字丝带:"follow the lantern path"

如果 Hoppy 想单独检查里面的某个词,整条丝带就有点碍手了。这次的小魔法不是改字,而是把一句话拆成几块词片,先看清每一块线索。

先看见形态变化

这节课最重要的,不是背一句定义,而是亲眼看到一件事:一整句字符串,拆开之后,会变成一个装着好几块词片段的小背包。

secret_line = "open the silver gate"

print("Whole sentence:", secret_line)

pieces = secret_line.split()
print("Word list:", pieces)

last_word = pieces[-1]
print("Last word:", last_word)

运行后,你会看到 ['follow', 'the', 'lantern', 'path'] 这样的结果。它已经不是原来那一句完整文本了,而是一个可以继续操作的列表。

split() 把它拆开

split() 会把一句按空格连在一起的文本拆成多个小片段。对这句提示语来说,拆完之后刚好就是一个单词列表。

然后你再轻轻读一下其中一块,比如第一个词。这样你就不只是“看见它被拆开了”,而是真的开始用拆出来的结果做事。

1
先把整句拆成列表

找到 words 那一行,用 split()broken_sentence 拆开。

2
再读出第一个词

first_word 改成来自 words 的第一个元素。

3
运行并观察三个输出

再运行一次,依次看看整句、单词列表、还有被单独读出来的第一个词。你应该能明显感觉到:这句话已经不再只能整块处理了。

为什么这里会出现方括号和逗号?

那是列表的样子。它在提醒你:现在屏幕上显示的已经不是一整句字符串,而是一组分开的片段。

参考答案
点击展开
参考答案:
broken_sentence = "follow the lantern path"

print("Whole sentence:", broken_sentence)

words = broken_sentence.split()
print("Word list:", words)

first_word = words[0]
print("First word:", first_word)
高级技巧
想更进一步?点击展开

程序员会说:split() 默认会按空格拆分,而拆完后的结果类型是 list。名字可以先轻轻认识一下,更重要的是你已经摸到手感了:整句可以先拆成几块再看。

以后你看到一整句文本、又想单独看其中某块时,就可以先问自己:要不要先拆开?下一课里,Hoppy 还会把这些拆开的片段重新束起来。

Loading...
终端输出
Terminal
Ready to run...