myDict = {"hello": "hi",
"fast car": "quick ride"}
sentence = input("Please enter a sentence: ")
words = sentence.split()
for i, word in enumerate(words):
if word in myDict:
print myDict.get(word)
continue
if i:
phrase = ' '.join([words[i-1], word])
if phrase1 in myDict:
print myDict.get(phrase)
continue
if i < len(words)-1:
phrase = ' '.join([word, words[i+1])
if phrase in myDict:
print myDict.get(phrase)
continue
这将检查每个单词以及两个单词的短语,使用当前单词之前和之后的单词来生成短语:
"fast car"
是字典的一个键,因此如果使用从中返回的键,则可以提取该值。在如果您直接从用户那里获取输入并使用它来引用字典,
get
更安全,因为它允许您在键不存在的情况下提供默认值。在既然您已经更清楚地说明了您的需求,现在最困难的部分是分割;
^{pr2}$get
没有改变。如果你能保证句子的顺序和结构(也就是说,它的结构总是让我们有一个有1个单词的短语,然后是一个有2个单词的短语),那么只在第一次出现空格字符时拆分。在我把更复杂的分割要求留给读者作为练习。一个提示是使用
myDict
的键来确定句子中存在哪些有效标记。在和你平常一样。在
解决特定问题的方法如下所示,
^{pr2}$maxlen
是字典中单个短语中的最大单词数。在给定句子
hello this is a nice fast car
,它输出hi this is a sweet quick ride
相关问题 更多 >
编程相关推荐