python - 在每行的开头添加一些字符

标签 python string indentation

我想在每一行的开头添加一些字符。

我该怎么办?

我是这样做的:

'\n\t\t\t'.join(myStr.splitlines())

但它并不完美,我想知道是否有更好的方法来做到这一点。我本来想自动缩进一整 block 文本。

最佳答案

我认为这是一个非常好的方法。您可以改进的一件事是您的方法引入了一个前导换行符,并删除了任何尾随换行符。这不会:

'\t\t\t'.join(myStr.splitlines(True))

From the docs:

str.splitlines([keepends])

Return a list of the lines in the string, breaking at line boundaries. This method uses the universal newlines approach to splitting lines. Line breaks are not included in the resulting list unless keepends is given and true.

此外,除非您的字符串以换行符开头,否则您不会在字符串的开头添加任何制表符,因此您可能也想这样做:

'\t\t\t'.join(('\n'+myStr.lstrip()).splitlines(True))

关于python - 在每行的开头添加一些字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18389454/

相关文章:

python - 如何使用 numpy 数组列表来训练 ML 算法?

C 宏/#define 缩进?

python - 是否有与 django-evolution 等效的 SQLAlchemy?

python - 当我传递 skip_footer arg 时,Pandas read_csv 忽略列数据类型

php - 检查字符串中的空格

java - 如何在 IntelliJ-IDEA 中按字母顺序在运行前按字母顺序排列预写的 String[] 数组元素?

c++ - 将 C++ 字符串视为指针

warnings - 如何关闭某些 .py 文件的 Pydev 缩进警告

javascript - Eclipse 可以在 JavaScript 数组初始化程序之后用 1 个制表符缩进新行吗?

python - 统计每月 Pandas 的分类数据