if __name__ == '__main__': from os import getcwd from os import sys sys.path.append(getcwd()) from MOAL.helpers.display import Section from MOAL.helpers.display import prnt from MOAL.helpers.display import print_h2 from MOAL.helpers.datamaker import make_sparselist from MOAL.helpers.datamaker import make_sparsematrix from MOAL.helpers.text import gibberish2 from pprint import pprint as ppr from random import randrange as rr DEBUG = True if __name__ == '__main__' else False if DEBUG: with Section('Sparse linear data structures'): max = 100 density = 0.1 items = {rr(0, max): gibberish2() for _ in range(int(max * density))} splist = make_sparselist(items, max) prnt('Sparse list', splist) sparse_data = {(x, x): gibberish2() for x in range(0, 10)} sparsematrix = make_sparsematrix(sparse_data, max, rows=10, cols=10) print_h2('Sparse matrix') ppr(sparsematrix)
pnode['foo'] = {'foo': 'bar'} except MutableAccessException: print('Successfully blocked write of existing version.') print_h2('Persistent full node') pfatnode = FullyPersistentNode() # Updating and overriding existing data print(pfatnode) pfatnode['foo'] = {'bar': 'baz'} print(pfatnode) pfatnode['bar'] = {'baz': 'bar'} print(pfatnode) print_simple('Current fat node data', pfatnode.get_current()) for _ in range(2): pfatnode[gibberish2()] = {gibberish2(): gibberish2()} print_simple('Fat node data', pfatnode.versions) print_h2('Persistent confluent') confluent = ConfluentlyPersistentNode() confluent['foo'] = {gibberish2(): gibberish2()} confluent['bar'] = {gibberish2(): gibberish2()} confluent['bim'] = {gibberish2(): gibberish2()} confluent['baz'] = {gibberish2(): gibberish2()} print_simple('Confluent node data', confluent.versions) confluent.meld('melded_example', versions=['foo', 'bar', 'baz', 'bim']) print_simple('Confluent node data', confluent.versions) print_h2('Persistent partial Fat Node') confluentfat = ConfluentlyPersistentFatNode()
__author__ = """Chris Tabor ([email protected])""" if __name__ == '__main__': from os import getcwd from os import sys sys.path.append(getcwd()) from MOAL.helpers.display import Section from MOAL.helpers.display import prnt from MOAL.helpers.display import print_h2 from MOAL.helpers.datamaker import make_sparselist from MOAL.helpers.datamaker import make_sparsematrix from MOAL.helpers.text import gibberish2 from pprint import pprint as ppr from random import randrange as rr DEBUG = True if __name__ == '__main__' else False if DEBUG: with Section('Sparse linear data structures'): max = 100 density = 0.1 items = {rr(0, max): gibberish2() for _ in range(int(max * density))} splist = make_sparselist(items, max) prnt('Sparse list', splist) sparse_data = {(x, x): gibberish2() for x in range(0, 10)} sparsematrix = make_sparsematrix(sparse_data, max, rows=10, cols=10) print_h2('Sparse matrix') ppr(sparsematrix)
def _hash(self, data): return tiger.new(data).hexdigest() if DEBUG: with Section('Hashed array tree'): data = { 0: {'edges': [1, 2, 3], 'is_root': True}, 1: {'edges': [], 'parent': 0}, 2: {'edges': [4], 'parent': 0}, 3: {'edges': [5], 'parent': 0}, 4: {'edges': [], 'parent': 0}, 5: {'edges': [], 'parent': 0}, } for k, node in data.iteritems(): node['val'] = gibberish2() print_h2('Merkle Tree') merkle = MerkleTree(data) for k, node in merkle.vertices.iteritems(): print('Node edges: {}, Child hash: {}'.format( node['edges'], node['val'])) print_h2('Tiger Tree Hash') data[0]['edges'].remove(3) tth = TigerTreeHash(data) for k, node in tth.vertices.iteritems(): print('Node edges: {}, Child hash: {}'.format( node['edges'], node['val']))
for _ in range(4)} } }) prnt('List comprehension', [x**2 for x in range(10) if x % 2 == 0]) prnt('List comprehension - nested', [[x**y for x in range(1, 4) if x % 2 == 0] for y in range(1, 8)]) wtf = [[_nested(min=x), _nested(max=y)] for x, y in enumerate(range(1, 10))] print_h2('List comprehensions - triple nested') ppr(wtf) print_h2('Dictionary and list comprehensions, combined') dl_combined = { txt.gibberish2(): _nested(min=x, max=x * 2) for x in range(8) } ppr(dl_combined) print_h2('Set comprehension') set_comp = set([choice(range(100)) for _ in range(10)]) ppr(set_comp) print_h2('Frozenset comprehension') frozen_set_comp = frozenset([choice(range(100)) for _ in range(10)]) ppr(frozen_set_comp) print_h2('Tuple comprehension') tup = tuple((x, x * 2) for x in range(5)) ppr(tup)