为什么会有括号

2024-09-29 06:27:21 发布

您现在位置:Python中文网/ 问答频道 /正文

为什么在本代码中,if sum([x,y])中b之后有括号<=b“]”+[-1])

return max([sum([x,y]) for x in keyboards for y in drives if sum([x,y]) <= b]+[-1]) 谁来解释一下密码


Tags: 代码inlt密码forreturnifmax
2条回答

您可能应该切换到高亮显示匹配大括号和圆括号的编辑器

只需添加空白(Python将忽略此空白),即可重写代码:

return max(
    [
        sum(
            [
                x,y
            ]
        ) 
        for x in keyboards 
        for y in drives 
        if sum(
            [
                x,y
            ]
        ) <= b
    ]
    +
    [
        -1
    ]
)

看括号如何匹配

你得到的是:[list comprehension] + [-1]。这将创建一个合并了两个列表的新列表

无论出于何种原因,该代码的作者希望max至少为-1

相关问题 更多 >