我在外壳中定义了a=b=c=10
然后输入a,b,c就可以得到(10, 10, 10)了。
但是当我输入print(a,b,c)时,它会返回10 10 10。
这两者之间的区别是什么?我知道前者是一个元组,而后者是int。
发布于 2020-08-10 16:31:01
在shell中,当您使用a,b,c时,它实际上表示一个元组,并且在shell中打印该元组的repr(),但是当作为实际的python脚本运行时,它将不会被打印。它用逗号分隔,因为它是元组,这就是它的表示方式。您甚至可以尝试print((a,b,c)),因为它是一个元组,所以它将输出(10,10,10)作为str()的返回值。
另一方面,print()接受任意数量的参数,在本例中使用的是print(a,b,c),这些参数将打印出来(调用str()方法),由空格分隔,除非指定sep参数使用另一个字符分隔,否则默认使用空格。因此,如果变量a、b和c包含10,则打印函数将打印以空格分隔的10 10 10。
https://stackoverflow.com/questions/63336469
复制相似问题