взятие случайной выборки фрагментов текста python - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь взять случайные выборки длины k из каждой строки в строке текста, чтобы создать список фрагментов текста, но я продолжаю получать type error, хотя я могу распечатать группу случайных чисел, которые появиться в списке. функция int() не помогает в этом случае. Думаю ли я об этом все неправильно? Случайный пакет имеет лучшую реализацию? Я знаю, что это действительно быстрое решение, но, думаю, я просто недостаточно знаю типы данных для реализации правильного решения:

text = '''blahblahblah
blahblahblah
blahblahblah'''



import random
def randomtext(Text,k):
    chunks = []
    textspl = text.split('\n')
    tlen = len(textspl[0])-k
    for i in range(len(text)):
        samp = random.sample(tlen,1)
        chunks.append(text[i][samp:samp+k])
    return chunks


randomtext(text,3)
TypeError: Population must be a sequence or set.  For dicts, use list(d) 

1 Ответ

1 голос
/ 18 февраля 2020
def randomtext(text,k):
    chunks = []
    for line in text.splitlines():
        position = random.randint(0, len(line)-k)
        chunks.append(line[position:position+k])
    return chunks
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...