tony
tony

Reputation: 1536

function print in python shell

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.

Upvotes: 6

Views: 12188

Answers (2)

yan
yan

Reputation: 20982

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.

Upvotes: 2

Sven Marnach
Sven Marnach

Reputation: 601819

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'

Upvotes: 12

Related Questions