在 Python 中删除多行字符串的缩进
Python 中的多行字符串通常需要缩进以提高可读性和组织性。然而,当嵌入到函数中时,这种缩进变得过多。出现一个常见问题:“Python 有内置函数来删除这种全局缩进吗?”
解决方案:
虽然 Python 没有专用的内置函数-in 函数用于取消多行字符串缩进,标准库中的 textwrap.dedent() 函数可以有效地实现此目的。
该函数将多行字符串作为输入,并从所有超出公共文本行的空格中去除空格缩进级别。它假设第一行没有缩进,并从其余行中删除前面的空格。
示例:
让我们考虑以下具有全局 4 空格的多行字符串缩进:
s = """ Controller = require 'controller' class foo view: 'baz' class: 'bar' constructor: -> Controller.mix @ """
使用textwrap.dedent(),我们可以删除全局缩进:
import textwrap unindented_s = textwrap.dedent(s) print(unindented_s)
输出:
Controller = require 'controller' class foo view: 'baz' class: 'bar' constructor: -> Controller.mix @
如图所示,全局缩进已被有效删除,使字符串适合在不需要缩进的函数或其他上下文中使用。
以上是如何在 Python 中取消多行字符串的缩进而不失去可读性?的详细内容。更多信息请关注PHP中文网其他相关文章!