如何在 python 中将变量与数组部分匹配
how to do partially match variable with array in python
我有一个脚本可以对数组进行部分匹配变量,但它不起作用
import re
b = "Arun"
links_check_arr = ['Arun sdsdds',"dsds","arun ijiji"]
for links_find in links_check_arr:
if b in list(links_find):
print links_find
print b
以上脚本无效
但是如果我从 if 块中删除列表,它会按预期工作,但它也会匹配空值
import re
b = "Arun"
links_check_arr = ['Arun sdsdds',"dsds","arun ijiji"]
for links_find in links_check_arr:
if b in links_find:
print links_find
print b
输出:
Arun sdsdds
Arun
但是如果我将 b 值更改为空,它也会匹配空值
重新导入
b = ""
links_check_arr = ['Arun sdsdds',"dsds","arun ijiji"]
for links_find in links_check_arr:
if b in links_find:
print links_find
print b
输出:
Arun sdsdds
dsds
arun ijiji
但我不想将它与空值匹配
我想对 "Arun" 与数组 ["Arun sdsdds","dsds","arun ijiji"]
中的元素列表进行部分匹配
预期输出:
input:
Arun
Output:
Arun
input:
A
Output:
"" -> (null)
input:
output:
我该怎么做?
对于你的第一个例子,我认为你正在寻找 .split()
而不是 list()
。
for links_find in links_check_arr:
if b in links_find.split():
print links_find
print b
我假设您要查找的内容类似于检查 "Arun"
是否是字符串列表中的一个词。
解决此问题的一种更简洁的方法是创建一个新列表,其中包含 links_check_arr
中包含您所需单词的所有元素。您可以使用:
list_of_words = list(filter(lambda x: b in x.split(), links_check_array))
其中 b
是您要搜索的词(例如 "Arun"
),links_check_arr
是您要搜索的列表。
我有一个脚本可以对数组进行部分匹配变量,但它不起作用
import re
b = "Arun"
links_check_arr = ['Arun sdsdds',"dsds","arun ijiji"]
for links_find in links_check_arr:
if b in list(links_find):
print links_find
print b
以上脚本无效
但是如果我从 if 块中删除列表,它会按预期工作,但它也会匹配空值
import re
b = "Arun"
links_check_arr = ['Arun sdsdds',"dsds","arun ijiji"]
for links_find in links_check_arr:
if b in links_find:
print links_find
print b
输出:
Arun sdsdds
Arun
但是如果我将 b 值更改为空,它也会匹配空值
重新导入
b = ""
links_check_arr = ['Arun sdsdds',"dsds","arun ijiji"]
for links_find in links_check_arr:
if b in links_find:
print links_find
print b
输出:
Arun sdsdds
dsds
arun ijiji
但我不想将它与空值匹配
我想对 "Arun" 与数组 ["Arun sdsdds","dsds","arun ijiji"]
中的元素列表进行部分匹配预期输出:
input:
Arun
Output:
Arun
input:
A
Output:
"" -> (null)
input:
output:
我该怎么做?
对于你的第一个例子,我认为你正在寻找 .split()
而不是 list()
。
for links_find in links_check_arr:
if b in links_find.split():
print links_find
print b
我假设您要查找的内容类似于检查 "Arun"
是否是字符串列表中的一个词。
解决此问题的一种更简洁的方法是创建一个新列表,其中包含 links_check_arr
中包含您所需单词的所有元素。您可以使用:
list_of_words = list(filter(lambda x: b in x.split(), links_check_array))
其中 b
是您要搜索的词(例如 "Arun"
),links_check_arr
是您要搜索的列表。