Python 从If语句的结果创建新列表

Python 从If语句的结果创建新列表,python,list,if-statement,Python,List,If Statement,例如,如果我在这里有一个列表: my_list=[abc.txt, def.txt, ghi.jpg] 如何创建一个只包含.txt元素的新列表(这是运行if语句的结果,例如if type=.txt)您可以使用列表理解: new_list = [elem for elem in your_list if elem.endswith('.txt')] 另外,不要将list用作变量名。您使内置的列表功能无法访问。您可以使用列表理解: new_list = [elem for elem in you

例如,如果我在这里有一个列表:

my_list=[abc.txt, def.txt, ghi.jpg]

如何创建一个只包含.txt元素的新列表(这是运行if语句的结果,例如if type=.txt)

您可以使用列表理解:

new_list = [elem for elem in your_list if elem.endswith('.txt')]

另外,不要将
list
用作变量名。您使内置的
列表
功能无法访问。

您可以使用列表理解:

new_list = [elem for elem in your_list if elem.endswith('.txt')]

另外,不要将
list
用作变量名。您使内置的
列表
功能无法访问。

列表(过滤器(lambda字符串:string.endswith(.txt),elements_list))
列表(过滤器(lambda字符串:string.endswith(.txt),elements_list))
只是为了添加另一种方法:

>>> files = ['abc.txt', 'def.txt', 'ghi.jpg']
>>> result = filter(lambda x: x.endswith('.txt'), files)
>>> result
['abc.txt', 'def.txt']

只需添加另一种方法:

>>> files = ['abc.txt', 'def.txt', 'ghi.jpg']
>>> result = filter(lambda x: x.endswith('.txt'), files)
>>> result
['abc.txt', 'def.txt']

更改了列表名称,使其不影响内置项更改了列表名称,使其不影响内置项