Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python (10,10,10)和Shell中的10有什么区别?_Python_Python 3.x_Integer_Tuples - Fatal编程技术网

Python (10,10,10)和Shell中的10有什么区别?

Python (10,10,10)和Shell中的10有什么区别?,python,python-3.x,integer,tuples,Python,Python 3.x,Integer,Tuples,我定义 a=b=c=10在Shell中 只是打字而已 a、b、c和got(10、10、10) 但是我打字的时候 打印(a、b、c),它返回10 这两者有什么区别? 我知道前者是一个元组,后者是int。在shell中,当您使用a、b、c时,它实际上表示一个元组,并且它的repr()在shell中打印,但是当作为实际的python脚本运行时,它不会被打印。它由逗号分隔,因为它是元组,这就是它的表示方式。您甚至可以尝试打印((a,b,c)),因为它是一个元组,所以它将打印(10,10,10),就像st

我定义
a=b=c=10
在Shell中

只是打字而已
a、b、c
和got
(10、10、10)

但是我打字的时候
打印(a、b、c)
,它返回
10

这两者有什么区别?
我知道前者是一个元组,后者是int。

在shell中,当您使用
a、b、c
时,它实际上表示一个元组,并且它的
repr()
在shell中打印,但是当作为实际的python脚本运行时,它不会被打印。它由逗号分隔,因为它是元组,这就是它的表示方式。您甚至可以尝试打印((a,b,c)),因为它是一个元组,所以它将打印
(10,10,10)
,就像
str()的返回值一样


另一方面,
print()
接受任意数量的参数,在本例中,您使用的
print(a,b,c)
将打印这些参数(调用
str()
方法),并用空格分隔,除非指定了
sep
参数以使用另一个字符分隔,否则默认为空格。因此,如果变量a、b和c包含10,则打印函数将打印
10
,并用空格分隔。

(a、b、c)
将三个值放入元组中
print(a,b,c)
将三个参数传递给
print
,然后打印每个参数。如果要在函数调用中传递元组,则需要显式包含外圆括号以将其与多个参数区分开来:
print((a,b,c))
。在许多其他上下文中,允许省略外圆括号,如您前面的
a、b、c
语句中所述。