cuburn/scripts/walk.py

29 lines
600 B
Python
Raw Permalink Normal View History

2012-06-10 12:16:10 -04:00
#!/usr/bin/python2
2012-06-02 13:25:36 -04:00
import os
2012-06-10 12:16:10 -04:00
import sys
2012-06-02 13:25:36 -04:00
import random
2012-06-10 12:16:10 -04:00
if len(sys.argv) > 1:
random.seed(sys.argv[1])
2012-06-02 13:25:36 -04:00
edges = {}
for i in os.listdir('edges'):
if '=' not in i: continue
src, dst = i.rsplit('.', 1)[0].split('=', 1)
edges.setdefault(src, set()).add((src, dst))
seen = set()
src = random.choice(edges.keys())
for i in range(1000):
2012-06-10 12:16:10 -04:00
print 'edges/' + src
2012-06-02 13:25:36 -04:00
dsts = edges.get(src, set()).difference(seen)
if not dsts:
src = random.choice(edges.keys())
else:
dst = random.choice(list(dsts))[1]
2012-06-10 12:16:10 -04:00
print 'edges/' + '='.join([src, dst])
2012-06-02 13:25:36 -04:00
src = dst