python - 尝试将列表中的双字名称与用户输入匹配时如何处理它们?
问题描述
在我的项目上需要一点帮助。使用提供的列表,我需要用户输入一个包含至少一种水果名称的句子,然后我需要将输入的水果匹配到列表中并将其读回给用户。输出现在无关紧要。我可以让它匹配输入的尽可能多的水果,除非水果名称包含 2 个单词,例如“Passion Fruit”或“Mandarin Oranges”。[请记住,我是刚开始学习的第一学期学生,因此请保持超级基础。] 任何帮助将不胜感激。干杯! 请在下面查看我的工作。
fruits = [
'Apricots',
'Asian Pears',
'Avocados',
'Bananas',
'Blackberries',
'Blueberries',
'Boysenberries',
'Cactus Pear',
'Cantaloupe',
'Cherries',
'Coconut',
'Cranberries',
'Figs',
'Gooseberries',
'Grapefruit',
'Grapes',
'Honeydew Melon',
'Kiwifruit',
'Limes',
'Longan',
'Loquat',
'Lychee',
'Madarins',
'Malanga',
'Mandarin Oranges',
'Mangos',
'Mulberries',
'Nectarines',
'Oranges','Papayas',
'Passion Fruit',
'Peaches',
'Pears',
'Persimmons',
'Pineapple',
'Plums',
'Pomegranate',
'Prunes',
'Quince',
'Raisins',
'Raspberries',
'Rhubarb',
'Strawberries',
'Tangelo',
'Tangerines',
'Tomato',
'Ugli Fruit',
'Watermelon'
]
x=[]
input_sentence=input("Please type a sentence containing at least 1 fruit name :").title().split()
for fruit in fruits:
new_fruit=fruit.replace(" ","_")
x.append(new_fruit)
y=input_sentence
glue="_"
z=glue.join(y)
def intersect (x,y):
return list(set(x) & set(z))
print (intersect(x,z))
解决方案
fruits = [
'Apricots',
'Asian Pears',
'Avocados',
'Bananas',
'Blackberries',
'Blueberries',
'Boysenberries',
'Cactus Pear',
'Cantaloupe',
'Cherries',
'Coconut',
'Cranberries',
'Figs',
'Gooseberries',
'Grapefruit',
'Grapes',
'Honeydew Melon',
'Kiwifruit',
'Limes',
'Longan',
'Loquat',
'Lychee',
'Madarins',
'Malanga',
'Mandarin Oranges',
'Mangos',
'Mulberries',
'Nectarines',
'Oranges','Papayas',
'Passion Fruit',
'Peaches',
'Pears',
'Persimmons',
'Pineapple',
'Plums',
'Pomegranate',
'Prunes',
'Quince',
'Raisins',
'Raspberries',
'Rhubarb',
'Strawberries',
'Tangelo',
'Tangerines',
'Tomato',
'Ugli Fruit',
'Watermelon'
]
input = "I like to eat Asian Pears" # user Input sentence
for fruit in fruits: # iterate over fruits
if str.__contains__(input, fruit): # use string method contains to check if fruit is in user input
print(fruit) # if find print
遍历水果列表以检查水果是否在用户输入中 句子将完成这项工作。
推荐阅读
- swift - 如何在调用 `viewDidLoad` 之前加载 self.navigationController
- c# - 在 AuthorizeAttribute Mvc Core Web Api 中获取控制器实例
- javascript - 如何使用 AngularJS 在 HTML 中显示二进制图像
- java - 如何确保第三方 API 正常工作
- python-3.x - 文件夹中所有 mp4 文件的 Python3 clip.duration
- python - ARIMA 预测
- c++ - 如何检查特定文件夹中是否存在任何文件?
- scala - Spark 无法识别提供给 withWatermark() 的事件时间列
- c# - 将数据导出到现有 Excel 文件中的单元格
- c# - 如何在 C# 中将 SteamKit2.SteamApps+PICSTokensCallback 转换为有意义的消息