Python textwrap.dedent with comment 没有按预期工作
Python textwrap.dedent with comment does not work as expected
我在 visual studio 上使用 Python 3.6。
下面是python互动日志
>>> from textwrap import dedent
>>> dedent("\ta = 4\n")
'a = 4\n'
>>> dedent("\ta = 4\n#")
'\ta = 4\n#'
>>> dedent("\ta = 4\n\t#")
'a = 4\n#'
>>> dedent("\ta = 4\n\t\n#")
'\ta = 4\n\n#'
>>> dedent("\ta = 4\n\t\n\t#")
'a = 4\n\n#'
>>> dedent("\ta = 4\n\t#\n\t")
'a = 4\n#\n'
>>> dedent("\ta = 4\n\t\n#\t")
'\ta = 4\n\n#\t'
>>>
缩进在第一种情况下正确取消缩进前导制表符,但当我添加“#”时,前导制表符不会取消缩进。这是故意的吗?
textwrap.dedent() 假设它的参数是纯文本,而不是 Python 源代码。它不会将“#”解释为注释。
这两个示例的行为相似:
>>> dedent("\ta = 4\n#")
'\ta = 4\n#'
>>> dedent("\ta = 4\nx")
'\ta = 4\nx'
我在 visual studio 上使用 Python 3.6。 下面是python互动日志
>>> from textwrap import dedent
>>> dedent("\ta = 4\n")
'a = 4\n'
>>> dedent("\ta = 4\n#")
'\ta = 4\n#'
>>> dedent("\ta = 4\n\t#")
'a = 4\n#'
>>> dedent("\ta = 4\n\t\n#")
'\ta = 4\n\n#'
>>> dedent("\ta = 4\n\t\n\t#")
'a = 4\n\n#'
>>> dedent("\ta = 4\n\t#\n\t")
'a = 4\n#\n'
>>> dedent("\ta = 4\n\t\n#\t")
'\ta = 4\n\n#\t'
>>>
缩进在第一种情况下正确取消缩进前导制表符,但当我添加“#”时,前导制表符不会取消缩进。这是故意的吗?
textwrap.dedent() 假设它的参数是纯文本,而不是 Python 源代码。它不会将“#”解释为注释。
这两个示例的行为相似:
>>> dedent("\ta = 4\n#")
'\ta = 4\n#'
>>> dedent("\ta = 4\nx")
'\ta = 4\nx'