词语分析
本课属于 Coddy GDScript 学习旅程的“逻辑与流程”单元。第 77 课,共 78 课。
挑战
困难在 _ready() 上方编写函数 analyze_text(text)。它会分析文本中的单词并返回一个字典。给定的 _ready() 会读取一行文本,调用你的函数并打印结果。
先处理单词:
- 单词不区分大小写:
Hello和hello是同一个单词,因此要将单词转换为小写 - 从文本中移除这些字符:
. , ! ? : ; " ( ) - 单词之间用空格分隔,空文本中没有单词
返回一个包含三个键的字典,顺序如下:
"unique_count":不同单词的数量"repeated_words":出现次数超过一次的单词组成的数组"palindromes":正着读和倒着读都相同的不同单词组成的数组,例如level或a
每个单词在数组中只出现一次,并且两个数组都按字母顺序排序。对于下面的文本:
Madam saw a racecar. Dad said hello hello to mom.输出为:
{ "unique_count": 9, "repeated_words": ["hello"], "palindromes": ["a", "dad", "madam", "mom", "racecar"] }亲手试试
extends Node
func analyze_text(text: String):
# 在这里编写你的代码
pass
func _ready():
var text := OS.read_string_from_stdin()
print(analyze_text(text))
逻辑与流程中的所有课
自己练习: GDScript 在线编译器