$ python
Python 2.6.6 (r266:84292, Nov 21 2013, 10:50:32)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
a = 256
b = 256
a is b
True
a = 257
b = 257
a is b
False
On Sunday, May 10, 2015 at 1:05:58 AM UTC+2, Vladimir Macek wrote:
Just having fun.
$ python
a = {}
b =
On 2015-05-11, 20:53 GMT, Honza Král wrote:
Jen pozor, ze tohle je chovani CPythonu, tedy jedne z implementaci a
nikoli definice chovani pythonu, nelze tedy na to spolehat a
porovnavani integereru by se melo vzdy provadet pres == a nikdy pres
is, i kdybychom meli 1000% jistotu, ze to budou jen
Zdravím.
Můžete mi prosím toto někdo vysvětlit? Myslel jsem si, že datové typy jsou
buď měnitelné, nebo neměnitelné --- ale tady do vypadá, že int je něco mezi
tím. Díky.
Marek
On Mon, 11 May 2015 03:46:33 -0700 (PDT) Pavel Schön pa...@schon.cz wrote
to python@py.cz:
$ python
Python 2.6.6
Jen pozor, ze tohle je chovani CPythonu, tedy jedne z implementaci a
nikoli definice chovani pythonu, nelze tedy na to spolehat a
porovnavani integereru by se melo vzdy provadet pres == a nikdy pres
is, i kdybychom meli 1000% jistotu, ze to budou jen cisla od 0 do 10.
Honza Král
E-Mail:
Integery od -5 do 256 jsou hardcodované, neboť jsou často používané, vždy
jsou inicializované v paměti a proto mají stejné adresy.
https://docs.python.org/2/c-api/int.html#c.PyInt_FromLong
___
Python mailing list
python@py.cz
Měnitelnost/neměnitelnost je jedna věc a identita/hodnota druhá. Můžu mít
dva neměnitelné objekty stejné hodnoty, každý z nich ale bude existovat
zvlášť - na své vlastní adrese v paměti. Snažit se, aby všechny takové
objekty byly automaticky deduplikovány, by byla jen práce navíc.
PM
Dne 11.
Trošku z jiného soudku:
$ python3
Python 3.4.3 (default, Mar 23 2015, 04:19:36)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type help, copyright, credits or license for more information.
class Account:
... def deposit(self, amount):
... print('saved:', amount)