python 面试题: 列表表达式

Posted liuzhipenglove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 面试题: 列表表达式相关的知识,希望对你有一定的参考价值。

[process() for item1 in iterable1 if condition1 for item2 in iterable2 if condition2 For item3 in iterable3 if condition3]


等效于:
res = []
for item1 in iterable1:
    if condition1:
    for item2 in iterable2:
        if condition2:
            for item3 in iterable3:
                if condition3:
                    res.append(Process())

return res                                    

 

>>> L = [18, ABC,20,Yliu,liu]
>>> [[s.lower(), s.upper()] for s in L if isinstance(s, str)]
[[abc, ABC], [yliu, YLIU], [liu, LIU]]
>>>

Res =[]
for s in L:
    if isinstance(s, str):
        A = [s.lower(), s.upper()]
        Res.append(A)
Return Res        
[x if x > 0 else -x for x in L]
相当于:
Res = []
For x in L:
    A = x if x >0 else -x
    Res.append(A)

Return Res

 

以上是关于python 面试题: 列表表达式的主要内容,如果未能解决你的问题,请参考以下文章

Python面试必考重点之列表,元组和字典第十二关——如果列表元素是字典序列,如何利用lambda表达式对列表进行升序降序排列

python面试题之解释一下python的and-or语法

Python 面试基础题

python20181225——面试题

Python面试题之下面代码会输出什么

Python面试必考重点之字符串与正则表达式第六关——join方法的应用