首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:优雅的多行字符串格式

Python:优雅的多行字符串格式
EN

Stack Overflow用户
提问于 2015-05-10 18:43:11
回答 4查看 118关注 0票数 0

我正在使用一个数据库接口,该接口将查询字符串作为__getitem__()方法的key参数。但对于可读性不是很好的复杂查询:

代码语言:javascript
复制
e = db["(col1 in ['ABC', 'DEF', 'GHI']) & ((col2 != {}) & (col3 != {})) & (col4 == 'something')".format(-some_value-1, -another_value-1)]

目前,我正在使用以下内容:

代码语言:javascript
复制
e = db[" & ".join([
       "(col1 in ['ABC', 'DEF', 'GHI'])",
       "((col2 != {})".format(-some_value-1), 
       " (col3 != {}))".format(-another_value-1), 
       "(col4 == 'something')"
       ])]

我正在寻找一种更优雅(阅读:更容易阅读)的方式来格式化这个多行字符串。有什么建议吗?

EN

回答 4

Stack Overflow用户

发布于 2015-05-10 18:48:53

我认为这更具可读性。

代码语言:javascript
复制
e = db["(col1 in ['ABC', 'DEF', 'GHI']) & " +
       "((col2 != {}) & ".format(-some_value-1) +
       "(col3 != {})) & ".format(-another_value-1) +
       "(col4 == 'something')"]
票数 1
EN

Stack Overflow用户

发布于 2015-05-10 19:07:56

看看这是不是看起来更好,以防万一:)

代码语言:javascript
复制
e = db[
        """
        (col1 in ['ABC', 'DEF', 'GHI'])
        & ((col2 != {}) & (col3 != {}))
        & (col4 == 'something')
        """.format(-some_value-1, -another_value-1)
    ]
票数 1
EN

Stack Overflow用户

发布于 2015-05-10 20:01:12

代码语言:javascript
复制
e = db["(col1 in ['ABC', 'DEF', 'GHI'])" +
       "& ((col2 != {}) & (col3 != {}))".format(-some_value-1, -another_value-1) +
       "& (col4 == 'something')"]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30150446

复制
相关文章

相似问题

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