我不确定用户会输入什么,但我想将他们的输入句子分成列表中的单词
User_input = raw_input("Please enter a search criterion: ")
User_Input_list[""]
# input example: steve at the office
# compiling the regular expression:
keyword = re.compile(r"\b[aA-zZ]\b")
for word in User_input:
User_Input_list.append(word?)
# going by thin put example input I'd want
# User_Input_list["steve", "at" , "the" , "office"]
我不确定如何将输入分成单独的单词?我会给饼干帮忙!
答案 0 :(得分:3)
User_Input_list = User_input.split()
答案 1 :(得分:1)
最简单的解决方案可能是使用split
:
>>> "steve at the office".split()
['steve', 'at', 'the', 'office']
但这不会删除标点符号,这对您来说可能是也可能不是问题:
>>> "steve at the office.".split()
['steve', 'at', 'the', 'office.']
您可以使用re.split()
仅拨出信件:
>>> re.split('\W+', 'steve at the office.')
['steve', 'at', 'the', 'office', '']
但正如您在上面所看到的那样,您最终可能会处理空条目,并且当您有更精细的标点符号时会更糟糕:
>>> re.split("\W+", "steve isn't at the office.")
['steve', 'isn', 't', 'at', 'the', 'office', '']
所以你可以在这里做一些工作来选择一个更好的正则表达式,但你需要决定如何处理像steve isn't at the 'the office'
这样的文本。
因此,要为您选择合适的解决方案,您必须考虑您将获得哪些输入以及您想要的输出。
答案 2 :(得分:0)
Basicaly,
你应该这样做:
User_Input_list = User_input.split(' ')
就是这样......
答案 3 :(得分:0)
User_input = raw_input("Please enter a search criterion: ")
User_Input_list = User_input.split(" ")
请参阅:
答案 4 :(得分:0)
执行以下操作
User_input = raw_input("Please enter a search criterion: ")
User_Input_list = User_input.split()
答案 5 :(得分:0)
你已经找到了,有一个分裂字符串的好例子:
re.split('\W+', 'Words, words, words.')
像这样你得到所有的单词,删除所有标点符号。