如何根据另一个列表从 python 列表中获取元素
How to get element from a python list based on another list
我在 first_list 中有一个 URL 列表。现在我只想获取那些满足 argument_lst 条件的 URL。
在argument_lst中,我提供了一些具体的域名。我只需要 first_list 中的那些 URL 如果它们与 argument_lst.
匹配
这是我的代码:
first_list = ['https://www.abc45f.com/r/comments/dummy_url/', 'https://dfc.com/test_test/', 'https://www.kls.com/fsdnfklns_dfdsj','https://example11.com/app/1642038659010248255/']
argument_lst = ['abc45f.com', 'example11.com',5,7,8]
bl_lst = []
for lst in first_list:
all_element = lst
bl_lst.append(all_element)
for l in argument_lst:
if l in bl_lst:
print(l)
我想实现这样的目标:
https://www.abc45f.com/r/comments/dummy_url/
https://example11.com/app/1642038659010248255/
有人能帮帮我吗?
谢谢
你可以用一个异常处理块来实现,
first_list = ['https://www.abc45f.com/r/comments/dummy_url/', 'https://dfc.com/test_test/', 'https://www.kls.com/fsdnfklns_dfdsj','https://example11.com/app/1642038659010248255/']
argument_lst = ['abc45f.com', 'example11.com', 5, 7, 8]
output_list = []
for arg in argument_lst:
for el in first_list:
try:
if arg in el:
output_list.append(el)
except TypeError:
continue
print(output_list)
try-catch
块将尝试查找 argument_list
中的元素是否在 first_list
的任何元素中。如果是,则代码将 first_list
的成员附加到 output_list
。如果不是,它只是跳过它。
但是,如果参数不是字符串(在您的情况下是整数),代码将引发 TypeError
异常,因为您将尝试比较整数和字符串。在这种情况下,try-catch
块将处理异常并绕过它 - continue
语句将简单地转到下一个参数。只有当异常是 TypeError
类型时才会发生这种情况,其他任何情况仍会导致代码崩溃。尽可能缩小代码正在处理的异常非常重要,以允许它在实际意外的事情上崩溃。
我在 first_list 中有一个 URL 列表。现在我只想获取那些满足 argument_lst 条件的 URL。
在argument_lst中,我提供了一些具体的域名。我只需要 first_list 中的那些 URL 如果它们与 argument_lst.
匹配这是我的代码:
first_list = ['https://www.abc45f.com/r/comments/dummy_url/', 'https://dfc.com/test_test/', 'https://www.kls.com/fsdnfklns_dfdsj','https://example11.com/app/1642038659010248255/']
argument_lst = ['abc45f.com', 'example11.com',5,7,8]
bl_lst = []
for lst in first_list:
all_element = lst
bl_lst.append(all_element)
for l in argument_lst:
if l in bl_lst:
print(l)
我想实现这样的目标:
https://www.abc45f.com/r/comments/dummy_url/
https://example11.com/app/1642038659010248255/
有人能帮帮我吗?
谢谢
你可以用一个异常处理块来实现,
first_list = ['https://www.abc45f.com/r/comments/dummy_url/', 'https://dfc.com/test_test/', 'https://www.kls.com/fsdnfklns_dfdsj','https://example11.com/app/1642038659010248255/']
argument_lst = ['abc45f.com', 'example11.com', 5, 7, 8]
output_list = []
for arg in argument_lst:
for el in first_list:
try:
if arg in el:
output_list.append(el)
except TypeError:
continue
print(output_list)
try-catch
块将尝试查找 argument_list
中的元素是否在 first_list
的任何元素中。如果是,则代码将 first_list
的成员附加到 output_list
。如果不是,它只是跳过它。
但是,如果参数不是字符串(在您的情况下是整数),代码将引发 TypeError
异常,因为您将尝试比较整数和字符串。在这种情况下,try-catch
块将处理异常并绕过它 - continue
语句将简单地转到下一个参数。只有当异常是 TypeError
类型时才会发生这种情况,其他任何情况仍会导致代码崩溃。尽可能缩小代码正在处理的异常非常重要,以允许它在实际意外的事情上崩溃。