Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

function print in python shell

Tags:

python

Can anyone explain me difference in python shell between output variable through "print" and when I just write variable name to output it?

>>> a = 5
>>> a
5
>>> print a
5
>>> b = 'some text'
>>> b
'some text'
>>> print b
some text

When I do this with text I understand difference but in int or float - I dont know.

like image 905
tony Avatar asked Jun 14 '11 21:06

tony


2 Answers

Just entering an expression (such as a variable name) will actually output the representation of the result as returned by the repr() function, whereas print will convert the result to a string using the str() function.>>> s = "abc"

Printing repr() will give the same result as entering the expression directly:

>>> "abc"
'abc'
>>> print repr("abc")
'abc'
like image 66
Sven Marnach Avatar answered Oct 29 '22 00:10

Sven Marnach


Python's shell always returns the last value evaluated. When a is 5, it evaluates to 5, thus you see it. When you call print, print outputs the value (without quotes) and returns nothing, thus nothing gets produced after print is done. Thus, evaluating b results in 'some test' and printing it just results in some text.

like image 31
yan Avatar answered Oct 28 '22 22:10

yan