Skip to main content
 首页 » 编程设计

python之这条长长的 Python 行的正确 PEP8 做法是什么

2025年05月04日15java哥

我应该如何分解这条线以使其遵守 PEP8?

    assert (sum(map(lambda x: len(x),  
                    (activities,apps,classes,users,verbs))) == 
            Object.query 
                  .filter(Object.status != ObjectStatusChoices.DELETED) 
                  .count()) 

请您参考如下方法:

如果您将内容重写为单独的行,则永远不会出现。

它还允许您为中间值指定有意义的名称(我不得不猜测,但想必您知道它们),甚至可以将一些逻辑重构为函数(您也可以给有意义的名字)。

例如,不更改任何逻辑,甚至不重写任何逻辑(除了使用 len 代替 lambda x: len(x)):

lengths = map(len, (activities,apps,classes,users,verbs)) 
db_query = Object.query.filter(Object.status != ObjectStatusChoices.DELETED) 
assert sum(lengths) == db_query.count()