这是一个用于打印嵌套列表中所有值的函数(摘自《Python头脑风暴》)。
def printall(the_list, level):
for x in the_list:
if isinstance(x, list):
printall(x, level=level + 1)
else:
for tab_stop in range(level):
print("\t", end='')
print(x)
这个函数的功能正常。
该函数基本上会打印列表中的值,并且如果有嵌套列表,则通过一个制表符空格进行打印。
只是为了更好地理解,end=' '
是什么作用?
我正在使用Python 3.3.5。
对于2.7版本:
f = fi.input( files = 'test2.py', inplace = True, backup = '.bak')
for line in f:
if fi.lineno() == 4:
print line + '\n'
print 'extra line'
else:
print line + '\n'
截至2.6版本,fileinput不支持with语句。以下代码追加了3行文本,并在第3行新行上打印追加的文本,然后再追加16个空行。
end
也不等同于一个换行符。end=' '
实际上意味着你想在语句结束后添加一个空格而不是一个新行字符。所以你可以在同一行上继续 "Whatever"。例如:print("Hello World") x = '20' print(x, x, x, x) print("HI HI")
将输出:第1行 = "Hello World",第2行 = 20 20 20 20,第3行 = "HI HI"然而,例如:print("Hello World") x = '20' print(x, x, x, x, end=' ') print("HI HI")
将输出:第1行 = Hello World,第2行 = 20 20 20 20 HI HI - imbatman