首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Python中中断一行链接的方法?

如何在Python中中断一行链接的方法?
EN

Stack Overflow用户
提问于 2011-01-23 00:14:21
回答 7查看 44.8K关注 0票数 167

我有一行下面的代码(不要责怪命名约定,它们不是我的):

代码语言:javascript
复制
subkeyword = Session.query(
    Subkeyword.subkeyword_id, Subkeyword.subkeyword_word
).filter_by(
    subkeyword_company_id=self.e_company_id
).filter_by(
    subkeyword_word=subkeyword_word
).filter_by(
    subkeyword_active=True
).one()

我不喜欢它的样子(可读性不太好),但在这种情况下,我没有更好的主意将行限制在79个字符以内。有没有更好的方法来打破它(最好不要反斜杠)?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-01-23 00:19:55

您可以使用其他括号:

代码语言:javascript
复制
subkeyword = (
    Session.query(Subkeyword.subkeyword_id, Subkeyword.subkeyword_word)
    .filter_by(subkeyword_company_id=self.e_company_id)
    .filter_by(subkeyword_word=subkeyword_word)
    .filter_by(subkeyword_active=True)
    .one()
)
票数 297
EN

Stack Overflow用户

发布于 2013-04-09 23:10:46

这是一种优先使用行连续字符而不是左括号的情况。随着方法名变得越来越长以及方法开始接受参数,对这种风格的需求变得越来越明显:

代码语言:javascript
复制
subkeyword = Session.query(Subkeyword.subkeyword_id, Subkeyword.subkeyword_word) \
                    .filter_by(subkeyword_company_id=self.e_company_id)          \
                    .filter_by(subkeyword_word=subkeyword_word)                  \
                    .filter_by(subkeyword_active=True)                           \
                    .one()

PEP8旨在用常识和实用和美观的眼光来解释。乐于违反任何导致难看或难以阅读的代码的PEP8指南。

也就是说,如果您经常发现自己与PEP 8不一致,这可能是一个迹象,表明存在可读性问题,而不是您选择的空格:-)

票数 69
EN

Stack Overflow用户

发布于 2011-01-23 00:19:48

只需存储中间结果/对象并调用其上的下一个方法,例如

代码语言:javascript
复制
q = Session.query(Subkeyword.subkeyword_id, Subkeyword.subkeyword_word)
q = q.filter_by(subkeyword_company_id=self.e_company_id)
q = q.filter_by(subkeyword_word=subkeyword_word)
q = q.filter_by(subkeyword_active=True)
subkeyword = q.one()
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4768941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档