blog.dopana

Back

欢迎回来,聊天达人! 💬

到目前为止,我们的小机器人都是自己通过 print() 在单向说话。但真正的聊天是需要有来有回的!今天,我们要给小机器人装上 “耳朵”,让它能够听到我们在键盘上输入了什么,并做出回答。

为了做到这一点,我们需要使用 input() 指令!

机器人是怎么听话的(输入流程)#

input() 指令会让你的程序暂停,等待你在键盘上敲字。当你按下回车键(Enter)的那一刻,Python 就会把你的话塞进一个变量盒子里保存起来!

graph TD
    Question["1. 机器人问: '你叫什么名字?'"] --> Input["2. 你输入: '亚历克斯' 并敲回车"]
    Input --> Box["3. '亚历克斯' 被存入 name 变量盒中"]
    Box --> Greet["4. 机器人回答: '很高兴认识你,亚历克斯! 👋'"]

在 Python 中,我们可以这样写:

name = input("你叫什么名字? ")
print("很高兴认识你," + name + "! 👋")
python

当你运行这段代码时,机器人会先显示问题,然后乖乖地等待。直到你输入名字并按下回车,它才会把问候语打印出来!

隐藏陷阱:数字和文字的差别! ⚠️#

在使用 input() 时,有一个隐蔽的陷阱。机器人会把你在键盘上输入的所有东西都当作是文字(字符串),哪怕你输入的是一个数字!

比如:

age = input("你今年几岁了? ")
print(age + 5)  # 💥 报错!Python 无法把数字和文字加在一起。
python

为了解决这个问题,我们需要使用一个叫作 int() 的转换魔法,把输入的文字变成真正的数字:

age = input("你今年几岁了? ")
age = int(age)  # 把文字(如 "10")变成真正的数字(10)
print("再过 5 年,你就是:", age + 5, "岁了。")
python

动手试一试! 🎮#

打开你的 Python 编辑器,试着写出这个互动小聊天程序:

color = input("你最喜欢什么颜色? ")

if color == "蓝色":
    print("真的吗?我也最喜欢蓝色了! 💙")
else:
    print(color + " 真是个好看的颜色! 🎨")
python

试着输入不同的颜色,看看小机器人会怎么回答你!

有了 input() 的魔力,你现在就可以编写自己的互动文字冒险游戏了,让玩家可以通过输入 "往左走""打开门""攻击怪物" 来推进剧情。快去开动你的脑筋吧!

参考资料#