Skip to content
This page has been auto-translated and may contain errors.View in English

疯狂填词

Cass 好的,嗨!接下来两周我负责船员娱乐活动,但我完全没有任何计划。你能做一个疯狂填词的东西吗?向每个人询问几个单词,把它们填入一个故事里,然后打印出混乱的结果。不需要很聪明。最好不要 😄

你要构建的内容

Give me a noun: pizza
Give me a verb: exploded
Give me an adjective: sparkly
Give me a place: the library

The sparkly pizza exploded in the library. Nobody saw it coming.

你需要了解的内容

  • 输出和输入 — 从玩家那里收集每个单词
  • 字符串 — 使用 f-string 将单词填入故事模板
  • 列表 — 一种在使用前存储收集到的单词的方法
  • 函数 — 可选,但将"询问单词"封装成函数可以让代码更整洁

提示

先收集,再打印。 在构建故事之前先收集所有单词。将 input() 调用与故事输出混在一起会很快变得混乱。

F-string 是最自然的选择。 一旦你有了所有单词,只需一个填入变量的 f-string 就能构建输出行。

变量或列表。 你可以把每个单词存储在各自的变量中(noun = ...verb = ...),或者把它们全部收集到一个列表中。两种方式都可以——想一想在写故事行时哪种更易读。

进一步探索

基础版本能正常运行后:

  • 多个模板。 编写两三个不同的故事模板,使用 random 模块随机挑选一个。
  • 更多单词类型。 添加复数名词、过去式动词、数字或颜色。空白越多,结果越好笑。
  • 让玩家选择。 按名称显示可用的故事模板,让玩家在收集单词前先做选择。