从Python列表中查找字符串中的单词
您好,我尝试输出一些单词,我将在一些字符串中找到这些单词: 例如:从Python列表中查找字符串中的单词,python,string,list,Python,String,List,您好,我尝试输出一些单词,我将在一些字符串中找到这些单词: 例如: string="Lampa tylna lewa + prawa AUDI A-6 '04-'08" def brand (string): car_array = ['Audi', 'Bmw', 'Chevrolet', 'Citroen', 'Dacia', 'Daihatsu', 'Dodge', 'Fiat', 'Ford', 'Honda', 'Hyundai', 'Isuz
string="Lampa tylna lewa + prawa AUDI A-6 '04-'08"
def brand (string):
car_array = ['Audi', 'Bmw', 'Chevrolet', 'Citroen', 'Dacia', 'Daihatsu', 'Dodge', 'Fiat', 'Ford', 'Honda',
'Hyundai', 'Isuzu', 'Iveco', 'Jeep', 'Kia', 'Land', 'Mazda', 'Mercedes', 'Mitsubishi', 'Nissan',
'Opel', 'Peugeot', 'Porsche', 'Renault', 'Seat', 'Skoda', 'SsangYong', 'Subaru', 'Suzuki', 'Toyota',
'Volkswagen', 'Volvo', "Vw", "Citroën", "Tesla", "Jaguar", "Mini", "Saab", "Lexus", "Infiniti", "Maserati",
'Chrysler', 'Alfa', 'Aston']
if any(word.upper() in string for word in car_array):
marka="found"
return marka
它的工作,但我如何才能返回这个发现的字
像
例如,对于any,您不能。在car_数组中使用正则for字:loop 输出:
AUDI
任何一个,你都不能。为什么不在car_数组:loop中使用一个常规的for单词呢?您只寻找一个单词吗?如果给定字符串中有2个或更多品牌,该怎么办?你不想同时找到它们吗?输出不好。奥迪不在其中。奥迪是。如果品牌名称不是以字符串的形式出现呢?你不会找到的。您搜索字符串中的word.upper…已更新@Aaron_ab。
def brand(string):
car_array = ['Audi', 'Bmw', 'Chevrolet', 'Citroen', 'Dacia', 'Daihatsu', 'Dodge', 'Fiat', 'Ford', 'Honda',
'Hyundai', 'Isuzu', 'Iveco', 'Jeep', 'Kia', 'Land', 'Mazda', 'Mercedes', 'Mitsubishi', 'Nissan',
'Opel', 'Peugeot', 'Porsche', 'Renault', 'Seat', 'Skoda', 'SsangYong', 'Subaru', 'Suzuki', 'Toyota',
'Volkswagen', 'Volvo', "Vw", "Citroën", "Tesla", "Jaguar", "Mini", "Saab", "Lexus", "Infiniti",
"Maserati",
'Chrysler', 'Alfa', 'Aston']
for word in car_array:
if word.lower() in string.lower():
found_word_index = string.lower().find(word.lower())
return string[found_word_index:found_word_index+len(word)]
string = "Lampa tylna lewa + prawa AUDI A-6 '04-'08"
print(brand(string))
AUDI