![](/img/trans.png)
[英]what is the significance of using list index in for loop of python?
[英]significance of using print() in python
使用print()
和不使用它有什么區別。
例如,假設a = ("first", "second", "third')
,它們之間有什么區別
print (a[0] a[2])
和
a[0] a[2]
?
>>> s = 'foo'
>>> s
'foo'
>>> print s
foo
當您在Python解釋器中鍵入任何表達式時,如果所述表達式返回一個值,則解釋器將輸出該值的表示或repr
。 repr
主要用於調試,旨在以對程序員有用的方式顯示值。 值的repr
典型示例是repr('foo')
將如何輸出'foo'
。
當你使用print
,你沒有返回一個值,所以解釋器實際上並沒有輸出任何東西; 相反, print
正在將值的str
寫入sys.stdout
(或替代流,如果使用>>
語法指定它,例如print >>sys.stderr, x
)。 str
s用於一般輸出,不僅僅是程序員使用,盡管它們可能與repr
相同。 值str
典型示例是str('foo')
如何輸出foo
。
當您編寫模塊或腳本時,解釋器的作用與print
之間的區別更大。 print
語句將繼續生成輸出,而表達式值不會輸出,除非您明確這樣做。 您仍然可以輸出值的repr
,但是: print repr(value)
您還可以在自己的對象中控制str
和repr
:
>>> 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
在交互模式中,差異可以忽略不計,正如其他答案所示。
但是,在腳本中, 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
)中運行此腳本,則輸出為:
印刷品:第三名
>>> a=("first","second")
>>> print a[0],a[1]
first second
>>> a[0],a[1]
('first', 'second')
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'
差異: 打印(a [0] a [2])和[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')
你可以這樣做
>>> print (a[0], a[2], a[3])
('first', 'second', 'third')
試試吧 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.