Python string expandtabs() 方法



python string expandtabs() 方法返回字符串的副本,其中所有制表符都替换为一个 或更多空格,具体取决于当前列和给定的制表符大小。Tab 键位置每 Tab 键大小字符出现一次(默认值为 8,在第 0、8、16 列等处提供 Tab 键位置)。要展开字符串,请将当前列设置为零,并将 字符串是逐个字符检查的。

如果字符是制表符 (\t),则会在 result,直到当前列等于下一个 Tab 键位置。不会复制实际的制表符字符。如果字符 是换行符 (\n) 或返回符 (\r),则它将被复制,并且当前列将重置为零。复制任何其他字符 unchanged 的字符,并且无论打印时字符的表示方式如何,当前列都会递增 1。

在下一节中,我们将了解有关 python string expandtabs() 方法的更多详细信息。

语法

以下是 python 字符串 expandtabs() 方法的语法。


 str.expandtabs(tabsize=8)

参数

以下是 python 字符串 expandtabs() 方法的参数。

  • tabsize − 此参数指定要替换制表符 '\t' 的字符数。

返回值

python 字符串 expandtabs() 方法返回字符串的副本,其中制表符使用空格展开。

以下是 python 字符串 expandtabs() 方法的示例。在这里,我们将创建一个字符串并尝试将其扩展到 25 个字符。


str = "Welcome to\tqikepu!!";
print("Original string: " + str)
result=str.expandtabs(25)
print("After expanding tabs, the result is:", result)

在执行上述程序时,将生成以下输出 -

Original string: Welcome to qikepu!!
After expanding tabs, the result is: Welcome to qikepu!!

在 python 字符串 expandtabs() 方法中,输入字符串可以有多个制表符。制表符出现多少次, 这些许多制表符空格将被替换。

在这里,我们将创建一个字符串 “01\t012\t0123\t01234” 并使用选项卡大小为 '17' 的 expandtabs() 展开所有选项卡。


str='01\t012\t0123\t01234'
print("Original string:",str)
result=str.expandtabs(17)
print("After expanding tabs, the result is:", result)

以下是执行上述程序得到的输出 -

Original string: 01 012 0123 01234
After expanding tabs, the result is: 01 012 0123 01234

让我们看看这种方法的另一个例子。


str="Hello!\t Welcome to qikepu!"
result=str.expandtabs(50)
print("After expanding tabs, the result is:", result)

通过执行上述程序获得以下输出 -

After expanding tabs, the result is: Hello! Welcome to qikepu!

不带任何参数的 python 字符串 expandtabs() 方法采用选项卡大小的默认值,即 '8'。

下面是一个示例,我们尝试在不传递任何参数的情况下对字符串调用此方法。


str="Hello!\t Welcome to qikepu!"
result=str.expandtabs()
print("After expanding tabs, the result is:", result)

上述程序在执行时显示以下输出 -

After expanding tabs, the result is: Hello! Welcome to qikepu!

python 字符串 expandtabs() 方法只接受整数参数,因为标签大小只能是整数形式。If 字符 或者没有给出其他数据类型,则会发生错误。

在此示例中,将一个字符串作为输入,然后对该输入字符串调用 expandtabs() 方法,其中 'j' 作为其 tabsize。


str="Hello!\t Welcome to qikepu!"
result=str.expandtabs('j')
print("After expanding tabs, the result is:", result)

上述程序的输出显示如下 -

Traceback (most recent call last):
File "main.py", line 2, in
result=str.expandtabs('j')
TypeError: an integer is required (got type str)