У меня есть этот код с использованием фальшивой даты (ниже), и он отлично работает:
exg = ["I love apple.",
"there are lots of health benefits of apple.",
"apple is especially hight in Vitamin C,",
"alos provide Vitamin A as a powerful antioxidant!"]
fruit_list = ["pear", "banana", "mongo", "blueberry", "kiwi", "apple", "orange"]
for j in range(0, len(exg)):
sentence = exg[j]
if any(word in sentence for word in fruit_list):
print(sentence)
выводится следующим образом: в предложении fruit_list отображаются только предложения, содержащие слова.
I love apple.
there are lots of health benefits of apple.
apple is especially hight in Vitamin C,
Затем я изменил fruit_list на свои реальные данные (real_list), реальные данные поступают из столбца в листе Excel.код чтения данных выглядит следующим образом:
import pandas as pd
data = pd.read_excel('C:/Users/my/Desktop/my_list.xlsx', 'Sheet1')
real_list = data['name'].tolist()
Но мой код больше не работает, и ошибка показана ниже:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-101-5a886e386099> in <module>()
7 for j in range(0, len(exg)):
8 sentence = exg[j]
----> 9 if any(word in sentence for word in real_list):
10 print(sentence)
<ipython-input-101-5a886e386099> in <genexpr>(.0)
7 for j in range(0, len(exg)):
8 sentence = exg[j]
----> 9 if any(word in sentence for word in real_list):
10 print(sentence)
TypeError: 'in <string>' requires string as left operand, not float
Я уверен, что проблема связана сreal_list.И я не могу показать real_list здесь (надеюсь, вы понимаете), но кто-нибудь испытывал это сообщение об ошибке раньше?и есть идеи, что может быть причиной этого?Пожалуйста, пришлите помощь.Большое спасибо !!