Оболочка, которая гарантирует количество строк, записанных в файл .txt

Редактировать:

[Ниже мой текущий код. Я использую PRAW для сбора данных с Reddit. Проблема, с которой я сталкиваюсь, заключается в том, что у некоторых пользователей будет менее 5 представлений для извлечения, поэтому мне нужно в этих случаях написать строку-заполнитель в мой txt-файл, чтобы он не испортил шаблон для моего nth сортировка строк в списки.

for reddituser in us_list:
    person = reddit.redditor(reddituser)
        x.write(str(person.name))
        x.write('\n')
        x.write(str((person.link_karma) + (person.comment_karma)))
        x.write('\n')
        for submission in person.submissions.new(limit=5):
            x.write(str(submission.title))
            x.write('\n')
            x.write(str(submission.upvote_ratio))
            x.write('\n')

        x.write('\n')

]

Получил большую помощь, объясняя, как обеспечить длину списка, добавляя конечные значения, когда это применимо. Можно увидеть здесь https://stackoverflow.com/a/60482191/12990947

Я собираю данные в файлы txt (значения, разделенные новой строкой), а затем превращаю то, что у меня есть в файлах txt, в списки. Я делаю это, используя readlines и [::5, [1::5] и т. д.)

По сути, мне нужно взять ответ, который я получил по ссылке, которую я дал, и применить его для работы так, как я это делаю, с новыми строками.

Как я могу в цикле for записать в свой текстовый файл очищенные данные, добавив строки-заполнители, когда доступные данные для параметра ‹ установленный мной предел?


person 4Looped    schedule 11.03.2020    source источник
comment
Пожалуйста, обновите свой вопрос с кодом, который вы пробовали.   -  person quamrana    schedule 11.03.2020
comment
Может быть, напишите, что вы уже сделали с вопросом? Это будет очень полезно, чтобы придумать ответ.   -  person Romeo Sierra    schedule 11.03.2020


Ответы (1)


Вы можете просто подсчитать, сколько записей вы написали:

count = 0
for submission in person.submissions.new(limit=5):
    x.write(str(submission.title))
    x.write('\n')
    x.write(str(submission.upvote_ratio))
    x.write('\n')
    count += 1
while count < 5:
    # print empty lines
    count += 1
person Daniel Junglas    schedule 12.03.2020