Python 中根据条件获取列表的子集
Python 中要根据条件获取列表的子集:
- 使用列表推导来遍历列表。
- 检查每个元素是否满足条件并返回结果。
- 新列表将只包含满足条件的元素。
my_list = [4, 7, 9, 12, 27]
subset = [
number for number in my_list
if number > 10
]
print(subset) # ?️ [12, 27]
我们使用列表理解来迭代列表。
在每次迭代中,我们检查当前项目是否大于 10 并返回结果。
新列表仅包含满足条件的项目。
或者,我们可以使用 for 循环。
使用 for 循环根据条件获取列表的子集
Python 中要根据条件获取列表的子集:
- 使用 for 循环遍历列表。
- 检查每个项目是否满足条件。
- 将满足条件的项目追加到新列表中。
my_list = [4, 7, 9, 12, 27]
subset = []
for item in my_list:
if item > 10:
subset.append(item)
print(subset) # ?️ [12, 27]
我们使用 for 循环遍历列表
在每次迭代中,我们检查当前数字是否大于 10。
如果满足条件,我们使用 list.append() 方法将项目添加到新列表。
my_list = ['www', 'jiyik']
my_list.append('com')
print(my_list) # ?️ ['www', 'jiyik', 'com']
该方法在改变原始列表时返回 None。
使用 filter() 根据条件获取列表的子集
Python 中要根据条件获取列表的子集:
- 使用 filter() 函数检查每个项目是否满足条件。
- 使用 list() 类将过滤器对象转换为列表。
my_list = [4, 7, 9, 12, 27]
subset = list(
filter(
lambda x: x > 10,
my_list
)
)
print(subset) # ?️ [12, 27]
filter 函数接受一个函数和一个可迭代对象作为参数,并从可迭代对象的元素构造一个迭代器,函数返回一个真值。
我们传递给 filter() 的 lambda 函数会针对列表中的每个元素进行调用。
该函数检查元素是否大于 10 并返回结果。
最后一步是使用 list() 类将过滤器对象转换为列表。
选择哪种方法是个人喜好的问题。 我会使用列表推导,因为我发现它们非常直接且易于阅读。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。