random reader

master
Bel LaPointe 2022-09-18 12:44:06 -06:00
parent 5c5f09fc3d
commit 1ebd6facae
2 changed files with 17 additions and 2 deletions

View File

@ -4,6 +4,7 @@ import bucket
def main():
r = reader.Reader(reader.StdinReader())
r = reader.Reader(reader.RandomReader())
w = writer.Writer()
bkt = bucket.Bucket()
for line in r.read():

View File

@ -3,6 +3,7 @@ import queue
import time
import sys
import select
import random
__interval__ = .1
@ -36,7 +37,10 @@ class Reader:
try:
while not reader.stopping:
try:
yield q.get(timeout=__interval__)
s = q.get(timeout=__interval__)
if s:
s = s.lower().strip()
yield s
except queue.Empty:
yield None
pass
@ -50,11 +54,21 @@ class StdinReader:
try:
if select.select([sys.stdin,],[],[],__interval__/2.0)[0]:
line = sys.stdin.readline()
return line.strip()
return line
except Exception as e:
pass
return None
class RandomReader:
def read(self):
seed = random.randint(0, 99)
if seed < 10:
return "a"
elif seed < 50:
return "B"
else:
return "b"
class FileReader:
def __init__(self, path):
self.f = open(path, "r")