![](/img/trans.png)
[英]Remove all elements which occur in less than 1% and more than 60% of the list
[英]how to remove all elements in a python list which are less than a particular number of charecters
如何删除列表中少于特定字符数的所有元素? 我们有一个包含 50 个元素的列表。 我正在尝试删除少于 30 个字符的所有元素。 我尝试使用 my_list.remove 但它不起作用。
元素是字符串,我正在尝试删除少于 20 个字符或字母的元素数量
你可以试试这个:
list1 = ['1', '2', '3' ...]
if len(list1)>50:
number = len(list1)-50
print(list1[number:])
您不能在迭代时删除元素,您已经创建了一个新列表。
new_list = [x for x in old_list if len(x) > 30]
即使这样也可以,因为首先计算右侧,然后覆盖旧值:
old_list = [x for x in old_list if len(x) > 30]
这个怎么样:
filtered = filter(lambda x: len(x)>29, my_list)
filtered_list = list(filtered)
example_list = ["1234", "12345", "123456", "1234567"]
# Example: Only keep list elements with over 5 characters
filtered_list = list(filter(lambda el: len(el) > 5, example_list))
print(filtered_list)
Output:
['123456', '1234567']
要仅保留具有 30 个或更多元素的元素,您可以将len(el) > 5
更改为len(el) > 29
或len(el) >= 30
。
这可能会有所帮助:
a = ["1", " 2", "123455"]
b = []
for i in a:
if len(i)>50:
b.append(i)
a= b
print(b)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.