Пока возился с Python, я решил создать генератор случайных символов, который бы выводил непрерывный поток символов в CL.
Это довольно просто и выглядит так:
from random import choice
import sys
char_ranges = [[33,48],[58,65],[91,97],[123,127]]
chars = []
for r in char_ranges:
for i in range(r[0],r[1]):
chars.append(chr(i))
while True:
print choice(chars),
sys.stdout.flush()
Единственная проблема с ним заключается в том, что ,
, используемый после печати символа, приводит к добавлению пробела после вызова stdout.flush()
.
Обычно я бы обошел это путем конкатенации строки и ее печати, но в этом случае мне нужен непрерывный поток вывода, и поэтому конкатенация не поможет.
Так как я могу получить непрерывный поток вывода в Python без пробелов?