annotate Lib/this.py @ 87690:66c1c9f32567 default tip

Add use_weakref option to functools.lru_cache The use_weakref option makes lru_cache create weak references to the function arguments when creating the cache key, which prevents them from staying in the memory forever even after all other references to them are gone. This is a proof of concept for http://bugs.python.org/issue19859
author Radomir Dopieralski <devel@sheep.art.pl>
date Tue, 03 Dec 2013 16:02:48 +0100
parents 4cdf21a0dbbc
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
21889
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
1 s = """Gur Mra bs Clguba, ol Gvz Crgref
21891
17a56e1c6ff8 Whitespace cleanup.
Guido van Rossum <guido@python.org>
parents: 21889
diff changeset
2
21889
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
3 Ornhgvshy vf orggre guna htyl.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
4 Rkcyvpvg vf orggre guna vzcyvpvg.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
5 Fvzcyr vf orggre guna pbzcyrk.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
6 Pbzcyrk vf orggre guna pbzcyvpngrq.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
7 Syng vf orggre guna arfgrq.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
8 Fcnefr vf orggre guna qrafr.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
9 Ernqnovyvgl pbhagf.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
10 Fcrpvny pnfrf nera'g fcrpvny rabhtu gb oernx gur ehyrf.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
11 Nygubhtu cenpgvpnyvgl orngf chevgl.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
12 Reebef fubhyq arire cnff fvyragyl.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
13 Hayrff rkcyvpvgyl fvyraprq.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
14 Va gur snpr bs nzovthvgl, ershfr gur grzcgngvba gb thrff.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
15 Gurer fubhyq or bar-- naq cersrenoyl bayl bar --boivbhf jnl gb qb vg.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
16 Nygubhtu gung jnl znl abg or boivbhf ng svefg hayrff lbh'er Qhgpu.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
17 Abj vf orggre guna arire.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
18 Nygubhtu arire vf bsgra orggre guna *evtug* abj.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
19 Vs gur vzcyrzragngvba vf uneq gb rkcynva, vg'f n onq vqrn.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
20 Vs gur vzcyrzragngvba vf rnfl gb rkcynva, vg znl or n tbbq vqrn.
19834cd101d9 Python 10 was a success, commemorate it\!
Fred Drake <fdrake@acm.org>
parents:
diff changeset
21 Anzrfcnprf ner bar ubaxvat terng vqrn -- yrg'f qb zber bs gubfr!"""
21891
17a56e1c6ff8 Whitespace cleanup.
Guido van Rossum <guido@python.org>
parents: 21889
diff changeset
22
31460
cc10b010f40b Back rev 1.3 out per Raymond's request.
Hye-Shik Chang <hyeshik@gmail.com>
parents: 31457
diff changeset
23 d = {}
cc10b010f40b Back rev 1.3 out per Raymond's request.
Hye-Shik Chang <hyeshik@gmail.com>
parents: 31457
diff changeset
24 for c in (65, 97):
cc10b010f40b Back rev 1.3 out per Raymond's request.
Hye-Shik Chang <hyeshik@gmail.com>
parents: 31457
diff changeset
25 for i in range(26):
cc10b010f40b Back rev 1.3 out per Raymond's request.
Hye-Shik Chang <hyeshik@gmail.com>
parents: 31457
diff changeset
26 d[chr(i+c)] = chr((i+13) % 26 + c)
cc10b010f40b Back rev 1.3 out per Raymond's request.
Hye-Shik Chang <hyeshik@gmail.com>
parents: 31457
diff changeset
27
40775
4cdf21a0dbbc Fix most trivially-findable print statements.
Guido van Rossum <guido@python.org>
parents: 31460
diff changeset
28 print("".join([d.get(c, c) for c in s]))