From the doc:
The count returned is generally one higher than you might expect, because it includes the (temporary) reference as an argument to getrefcount().
And 'till here all is clear to me, infact:
Python 3.4.0 (default, Apr 11 2014, 13:05:11)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> x = 'hello'
>>> sys.getrefcount(x)
2
But if I do something like this:
>>> import sys
>>> x = 'hello'
>>> sys.getrefcount(x)
2
>>> sys.getrefcount('hello')
3
I don't understand why I get 3, should I get 2?
Another strange example to me that I have noticed (from a file .py):
import sys
print(sys.getrefcount(59587389257548905723958375385))
Result ---> 3
Should't it be 1 (according to the doc)?