如何在字符串中设置空格

时间:2013-06-18 00:33:45

标签: python string user-input

我试图让程序检查用户输入“get up”或“rise and shine”然后打印“im up”。问题是它不会打印“im up”它直接进入else语句。我现在这个代码使它成为我在哪里改变“起来”到“你好”然后如果我在输入中输入任何东西并在输入中包含“你好”它然后将打印“测试”,我会如果可能的话,想保持这种状态吗?代码:

dic = {"get,up", "rise,and,shine"}
test = raw_input("test: ")
tokens = test.split()
if dic.intersection(tokens):
    print "test"
else:
    print "?" 

帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

dic.intersection()返回两组的交集。例如:

{1, 2, 3}.intersection({2, 3, 4})  # {2, 3}

您可能只想测试会员资格:

if tokens in dic:
    ...

虽然这也不起作用,因为你用空格分割字符串,这将使它测试单个单词,而不是整个短语。另外,命名集合dic不是一个好主意。这是一套,而不是字典。

简而言之,请勿使用集合,不要使用.split()

phrases = ['get up', 'rise and shine']
phrase = raw_input('Enter a phrase: ')

if phrase in phrases:
    print "test"
else:
    print "?"