2

print()使用和不使用有什么区别。

例如,说a = ("first", "second", "third')之间有什么区别

print (a[0] a[2])

a[0] a[2]

?

4

5 回答 5

6
>>> s = 'foo'
>>> s
'foo'
>>> print s
foo

当您在 Python 解释器中键入任何表达式时,如果该表达式返回一个值,则解释器将输出该值的表示形式,或者repr. reprs 主要用于调试,旨在以对程序员有用的方式显示值。一个值的典型例子repr是如何repr('foo')输出'foo'

当你使用 时print,你没有返回一个值,所以解释器实际上并没有输出任何东西;相反,print正在将值写入strsys.stdout或替代流,如果您使用>>语法指定它,例如print >>sys.stderr, x)。 strs 用于一般输出,而不仅仅是程序员使用,尽管它们可能与repr. 一个值的典型例子str是如何str('foo')输出foo

print解释器所做的事情与您编写模块或脚本时发挥更大作用 的区别。print语句将继续产生输出,而表达式值不会输出,除非您明确这样做。但是,您仍然可以输出一个值reprprint repr(value)

您还可以控制strrepr在您自己的对象中:

>>> class MyThing(object):
...     def __init__(self, value):
...         self.value = value
...     def __str__(self):
...         return str(self.value)
...     def __repr__(self):
...         return '<MyThing value=' + repr(self.value) + '>'
...
>>> mything = MyThing('foo')
>>> mything
<MyThing value='foo'>
>>> print mything
foo
于 2013-01-23T12:59:30.640 回答
4

正如其他答案所示,在交互模式下,差异可以忽略不计。

但是,在脚本中,print a[0]实际上会将输出打印到屏幕上,而只会a[0]返回,但这没有可见的效果。

例如,考虑以下脚本printtest.py

myList = ["first", "second", "third"]

print "with print:", myList[0], myList[2]

"without print:", myList[0], myList[2]

如果您在终端 ( python printtest.py) 中运行此脚本,则输出为:

带印刷品:前三分之一

于 2013-01-23T12:28:03.170 回答
1

你可以这样做

>>> print (a[0], a[2], a[3])
('first', 'second', 'third')

试试看 :)

于 2013-01-23T14:29:56.423 回答
1
>>> a=("first","second")
>>> print a[0],a[1]
first second
>>> a[0],a[1]
('first', 'second')
于 2013-01-23T12:26:16.363 回答
1

print() 而不使用它?

print打印值(我的意思是在以下示例中,阅读我添加的彗星):

>>> print a[1]
second           # prints without '
>>> a[1]
'second'         # prints with ' 

更有用:

打印:

>>> print "a\nb"  
a                # print value   
b

但是翻译

>>> "a\na"       # raw strings 
'a\na'

那是原始的:

>>> print repr("a\na")
'a\na'

区别:print (a[0] a[2]) 和 a[0] a[2]?

这打印a元组的两个元素。如下

>>> print a[0], a[2]
first third  

这类似于打印两个字符串,如下所示:

>>> print "one", "two"
one two

[第二]

这首先创建一个元组(a[0], a[2]),然后将其打印

>>> print (a[0], a[2])
('first', 'third')

首先制作一个包含 2 个字符串的元组,然后打印如下:

>>> print ("one", "two")
('one', 'two')  

此外,如果您添加,,则它会生成一个元组:

简单字符串

>>> a[0]
'first'

这是元组:

>>> a[0],
('first',) 

相似地,

>>> a[0], a[1]
('first', 'second')  
于 2013-01-23T12:26:52.070 回答