有没有办法在输入中至少识别一个单词?

2024-07-01 07:11:00 发布

您现在位置:Python中文网/ 问答频道 /正文

例如

    userDay = input("How was you day? ")

用户输入“My day was good” 然后程序识别出用户说的“好”,然后选择正确的回答“好”

对不起,如果你不明白,很难解释


Tags: 用户程序youinputmyhowgoodday
3条回答

简单快捷的方法是使用response.split()将响应拆分为单词,然后检查每个单词是否等于good

这样可以避免搜索“good”“good”“good”(good word可以是起始词、结束词或行中的某个位置)

我建议使用python的内置词法分析工具shlex。它非常有用,因为它包含的功能使编写(简单的)词法分析器变得容易

所以你可以这样做:

import shlex
user_input = 'My day was good'
li = shlex.split(user_input)
print 'Your day was good' if 'good' in li else 'Your day was bad'

这里的print仅用于演示目的。你必须用你的代码来代替它们,你的代码将为“好”选择正确的响应

只需检查子字符串是否在字符串中:

userDay = input("How was you day? ")

if 'good' in userDay:
    print('good')

或者您可以使用:

if userDay.find('good') == 1:
    print('good')

相关问题 更多 >

    热门问题