Хочу показать вам скрипт для генерации чисел. Я не буду говорить для какой цели я его написал. Скажу, что он очень нужен. Цикл while останавливается только тогда, когда будут данные для 52 недель. Подробнее о цикле while читайте на странице как вывести циклом while список Python. Обратите внимание на то, что используются числа от 1 до 4. Я подключаю сразу 2 модуля:
Сам скрипт генерирует число для каждого дня недели. Для генерации числа использую метод randint. Конструкция random.randint(1,5) генерирует число от 1 до 4. Вы можете смело изменить охват. Модуль datetime позволяет определить номер недели при помощи метода strftime. Этот метод преобразует время в строку. В нашем случае date.strftime('%U') получится номер недели. Используйте функцию int для преобразования строки в число.
#!/usr/bin/python3
import random, datetime
date = datetime.datetime.today()
week_num = int(date.strftime('%U'))
cur_arr = []
row = ''
i = 0
# формируем строку
while True:
'''
random.randint(<Начало>, <Конец>) — возвращает псевдослучайное целое число
в диапазоне от <начала> и до <конца>
'''
num = random.randint(1,5)
if(len(cur_arr) < 7):
cur_arr.append(num)
else:
'''преобразуем каждый элемент в строку str()
при помощи функции map()
'''
seperator = ', '
row += str('неделя ') + str(week_num) + ': ' \
+ seperator.join(map(str,cur_arr)) + '\n'
cur_arr.clear()
if week_num == 52: break
week_num += 1
i += 1
# запись в файл
with open('test.txt', 'w') as file:
file.write(row)
print('\nфайл закрыт:', file.closed)
'''
неделя 37: 1, 3, 5, 4, 5, 3, 4
неделя 38: 2, 1, 3, 1, 3, 5, 1
неделя 39: 1, 5, 2, 2, 2, 3, 4
неделя 40: 1, 1, 1, 1, 5, 5, 3
неделя 41: 4, 4, 1, 4, 5, 4, 2
неделя 42: 1, 5, 3, 1, 3, 2, 2
неделя 43: 1, 3, 4, 3, 3, 5, 3
неделя 44: 4, 3, 5, 4, 1, 2, 4
неделя 45: 1, 1, 4, 1, 1, 3, 5
неделя 46: 1, 2, 2, 3, 4, 3, 2
неделя 47: 4, 3, 3, 3, 3, 4, 5
неделя 48: 2, 3, 4, 1, 4, 5, 5
неделя 49: 4, 4, 4, 1, 5, 2, 1
неделя 50: 3, 3, 2, 1, 1, 2, 4
неделя 51: 1, 2, 2, 5, 5, 3, 1
неделя 52: 1, 4, 2, 2, 3, 2, 5
файл закрыт: False
'''
Скрипт записывает строку в файл при помощи with. Для переноса строк применяется символ переноса строки '\n'.