Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:如何从不带';不符合一定条件_Python_List - Fatal编程技术网

Python:如何从不带';不符合一定条件

Python:如何从不带';不符合一定条件,python,list,Python,List,我的名单如下: names = [ "Brian", "jake", "Jason", "Brad", "Tony", "jimmy", "Bobby", "Stevie"] 我要做一个名为“小名”的列表,包含上面列表中4个字母或更少的所有名字。我被难住了 我最初的想法是使用while循环,但它不起作用。您可以使用: small\u names=filter(lambda n:len(n)您可以使用: small\u names=filter(lambda n:len(n)我会使用: sho

我的名单如下:

names = [ "Brian", "jake", "Jason", "Brad", "Tony", "jimmy", "Bobby", "Stevie"] 
我要做一个名为“小名”的列表,包含上面列表中4个字母或更少的所有名字。我被难住了

我最初的想法是使用while循环,但它不起作用。

您可以使用:

small\u names=filter(lambda n:len(n)您可以使用:

small\u names=filter(lambda n:len(n)我会使用:

short_names=[name for name in names if len(name)我会使用:


short_names=[name for name in names if len(name)如果您需要解释码字是如何工作的,并且不知道lambda是什么,或者过滤器是如何工作的,您可能需要尝试另一个答案

列表=名称 对于列表中的项目:
如果len(item)这里是另一个答案,如果您需要解释密码是如何使用的,并且不知道lambda是什么,或者过滤器是如何工作的,那么您可能需要尝试一下

列表=名称 对于列表中的项目:
如果len(item),请共享您尝试过的代码段。请参阅。干杯们,认为我现在已排序!请共享您尝试过的代码段。请参阅。干杯们,认为我现在已排序!谢谢Marcin,我们还没有遇到filter命令,还有其他使用while循环的方法吗。我在anwser中写道:
small\u names=[n代表n如果len(n)Marcin,感谢一个mill。非常感谢!我犯了很多小错误。我认为练习是唯一的出路!感谢Marcin,我们还没有遇到filter命令,有没有另一种方法使用while循环。我在anwser中写道:
small_names=[n代表n如果len(n)则名称)Marcin,谢谢mill。非常感谢!我犯了很多小错误。我认为练习是唯一的前进之路!@SquareCerts不客气。列表理解是最具活力和可读性的方法。@SquareCerts不客气。列表理解是最具活力和可读性的方法。干杯,麦克hael!是的,我希望有一天我会知道什么是lambda和过滤器……我必须坚持下去!@squared如果你有列表理解,你不需要使用lambda和过滤器(在大多数情况下).干杯,迈克尔!是的,我希望有一天我会知道什么是lambda和过滤器……我必须坚持下去!@squareds如果你有列表理解(在大多数情况下),你不需要使用lambda和过滤器。
small_names = filter(lambda n: len(n)<=4, names)
#equivalent to: small_names = [n for n in names if len(n) <=4]

print(small_names) # ['jake', 'Brad', 'Tony']
small_names = []

for n in names:
    if len(n) <= 4:
        small_names.append(n)
short_names = [name for name in names if len(name) <= 4]