python 定义函数为什么有个长线_我如何在Python中分解这条长线?

这是一个开始。在使用它们的代码之外定义更长的字符串不是一个坏习惯。这是一种分离数据和行为的方法。您的第一个选项是通过将字符串字面量彼此相邻来隐式地连接在一起:

("This is the first line of my text, "

"which will be joined to a second.")

或者用行结束连续,这是一个更脆弱,因为这是工作:

"This is the first line of my text, " \

"which will be joined to a second."

但这不:

"This is the first line of my text, " \

"which will be joined to a second."

看到不同?没有?你会不会,当它是你的代码。

隐式连接的缺点是,它只适用于字符串字面量,而不是字符串

变量,所以事情可以得到一点多毛,当你重构。此外,您只能对组合字符串作为整体插入格式。

或者,您可以使用concatenation运算符()显式地连接:

("This is the first line of my text, " +

"which will be joined to a second.")

显式比隐式更好,如同python的zen所说,但是这创建了三个字符串而不是一个字符串,并且使用了两倍的内存:有两个你写的,加上一个,它们两个连接在一起,所以你必须知道什么时候忽略禅。上面是你可以应用格式化

每行上的任何子字符串,或从圆括号外部的整个批次。

最后,可以使用三引号字符串:

"""This is the first line of my text

which will be joined to a second."""

这通常是我最喜欢的,虽然它的行为略有不同,因为换行符和后续行上的任何前导空白将显示在最后一个字符串中。您可以使用转义的反斜杠消除换行符。

"""This is the first line of my text \

which will be joined to a second."""

这与上述相同的技术具有相同的问题,因为正确的代码仅通过不可见的空格与不正确的代码不同。

哪一个是“最好的”取决于你的具体情况,但答案不是简单的美学,而是一个微妙的不同的行为。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值