这两个脚本有什么区别?

时间:2013-03-25 18:35:43

标签: python python-3.x

我想知道这两个脚本之间有什么区别,输出看起来很相似!


def test(a,b,c,*args):
    print (a,b,c)
    for n in args: print(n, end=' ')

 test('aa','bb','cc',1,2,3,4)

输出:
    aa bb cc
    1 2 3 4


def test(a,b,c,*args):
    print (a,b,c)
    print (*args)

输出:

aa bb cc  
1 2 3 4

1 个答案:

答案 0 :(得分:3)

其中一个在循环中分别打印每个值,但告诉print()函数在每个值之后打印一个空格而不是换行符。

第二个版本打印 one go中的所有值,中间有空格,末尾有换行符。 args中的每个值都作为单独的参数传递给print()函数,就像您发出表达式print(args[0], args[1], args[2], args[3])一样。

因此存在差异。第一个版本打印:

1<space>2<space>3<space>4<space>

,而第二个版本打印:

1<space>2<space>3<space>4<newline>