/timm's /charming /python /tricks
Download
libd.py.
Read more on How to be Charming (in Python).
01: import sys
02: sys.dont_write_bytecode=True
03: from lib import *
04:
05: @demo
06: def mediand():
07: print median([1,2,3,4,5,6])
08: print median([1,2,3,4,5])
09:
10: @demo
11: def oned():
12: "Get anything out of a list."
13: resetSeed(1)
14: print one(list('abcd'))
15:
16: @demo
17: def fewd():
18: "Get any 3 things out of a list."
19: resetSeed(1)
20: print few(list('abcd'),3)
21:
22: @demo
23: def somed():
24: "Sample from some dictionary weights."
25: resetSeed(1)
26: d= {'box':30,'circle':20,'line':10}
27: out = []
28: for key in some(d, 10):
29: out += [key]
30: print sorted(out)
31:
32: @demo
33: def thingd():
34: """
35: Shows the auto print of a thing. Note:
36: the _cache var not printed (since it can
37: get VERY big).
38: """
39: eg = Sample()
40: print eg
41:
42: @demo
43: def structd():
44: "Create an object holding data in some fields."
45: x = Struct(lines=[], rows = 0, font='courier')
46: x.rows += 1
47: x.lines += ['a new line']
48: print x
49:
50: @demo
51: def sampled():
52: "Keep 20 items out of one million."
53: resetSeed(1)
54: sample = Sample(size=20)
55: for x in range(10**6):
56: sample.seen(x)
57: print sample.sorted()
58:
59: if __name__ == '__main__' :
60: eval(cmd('copyleft()'))
61:
This file is part of Timm's charming Python tricks.
© 2014, Tim Menzies:
tim.menzies@gmail.com,
http://menzies.us.
Timm's charming Python tricks are free software: you can redistribute it and/or modify it under the terms of the GNU Lesser Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Timm's charming Python tricks are distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU Lesser Public License along with Foobar. If not, see http://www.gnu.org/licenses.