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.
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'
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
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With