6

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.

2 Answers 2

12

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'
Sign up to request clarification or add additional context in comments.

Comments

2

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.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.