当前位置: 首页 > 面试题库 >

Python样式-使用字符串继续行吗?

盖斌
2023-03-14
问题内容

为了遵守python样式规则,我将编辑器设置为最多79个cols。

在PEP中,建议在方括号,括号和花括号内使用python的隐含延续。但是,当我达到col限制时处理字符串时,它会变得有些奇怪。

例如,尝试使用多行

mystr = """Why, hello there
wonderful codingdict people!"""

html" target="_blank">返回

"Why, hello there\nwonderful codingdict people!"

这有效:

mystr = "Why, hello there \
wonderful codingdict people!"

由于它返回以下内容:

"Why, hello there wonderful codingdict people!"

但是,当该语句缩进几个块时,这看起来很奇怪:

do stuff:
    and more stuff:
        and even some more stuff:
            mystr = "Why, hello there \
wonderful codingdict people!"

如果尝试缩进第二行:

do stuff:
    and more stuff:
        and even some more stuff:
            mystr = "Why, hello there \
            wonderful codingdict people!"

您的字符串结尾为:

"Why, hello there                wonderful codingdict people!"

我发现解决这个问题的唯一方法是:

do stuff:
    and more stuff:
        and even some more stuff:
            mystr = "Why, hello there" \
            "wonderful scodingdict people!"

我更喜欢它,但在眼睛上也有些不安,因为看起来好像一根绳子正坐在茫茫荒野中。这将产生适当的:

"Why, hello there wonderful codingdict people!"

因此,我的问题是-关于如何执行此操作的一些人的建议是什么?样式指南中是否缺少某些内容,这些内容确实显示了我应该如何执行此操作?

谢谢。


问题答案:

由于相邻的字符串文字会自动合并为单个字符串,因此您可以按照PEP 8的建议使用括号内的隐含行连续:

print("Why, hello there wonderful "
      "codingdict people!")


 类似资料:
  • 问题内容: 我喜欢在python中如何执行以下操作: 基本上,它读取的是一行列表,其中每一个代表3D空间中的一个点,该点表示为三个数字,以逗号分隔 如何用C ++做到这一点而又不会太麻烦呢? 性能不是很重要,此解析仅发生一次,因此简单性更为重要。 PS我知道这听起来像是一个新手问题,但是相信我我已经用D语言编写了一个词法分析器(非常类似于C ),其中涉及逐个字符读取一些文本char并识别标记, 就

  • 我正在使用Python 3.8.8和包含的日志库。要在Python中使用通用字符串格式,我还想使用记录新的格式字符串变体。我还想使用日志字符串的延迟评估(因此没有或)。 根据这篇关于pylint的堆栈溢出帖子(因此pylint日志格式样式=new),以下变体应该可以工作。但是,日志记录中有一个异常。信息。 最后一行的例外情况如下: 我从异常消息推断,日志记录仍然需要使用旧式格式,即。 如何在登录P

  • 需要验证的字符串采用以下格式,严格来说它不是JSON,不能使用PHP的JSON编码过程进行验证。请注意,键中的%%是必需的。 当前正则表达式成功验证了上述内容: 有效示例:https://regex101.com/r/4y1uEu/1 无效示例(第二个值周围没有引号):https://regex101.com/r/4y1uEu/2 值需要支持其他字符,最好是任何字符,所以我将REGEX更改为 与此

  • 问题内容: 我需要定界包含新行的字符串。我将如何实现?请参考下面的代码。 输入: 所需的输出: 我尝试了以下方法: 问题答案: 方法应该为您提供确切的信息。

  • 主要内容:指定最小输出宽度,指定对齐方式,指定小数精度我们在《 第一个Python程序——在屏幕上输出文本》中讲到过 print() 函数的用法,这只是最简单最初级的形式,print() 还有很多高级的玩法,比如格式化输出,这就是本节要讲解的内容。 熟悉C语言 printf() 函数的读者能够轻而易举学会 Python print() 函数,它们是非常类似的。 print() 函数使用以 开头的转换说明符对各种类型的数据进行格式化输出,具体请看下表。

  • 问题内容: 我正在开发一个应用程序,在其中执行一些请求以获取对象ID。在它们每个之后,我调用一个方法()将此id作为参数传递(请参见下面的代码)。 可以注意到,我正在将其转换为前缀并将其与前缀连接。但是,我知道我能做到这一点的多种其他方式(或者,例如),并在我的问题的结果:将超过字符串连接更好的可读性,代码约定和效率方面? 谢谢 问题答案: 这很容易成为基于意见的主题,但是我发现格式在大多数情况下