Как сохранить вывод в виде файла .txt? - PullRequest
0 голосов
/ 19 марта 2020

Это мой код:

def generate_random_number_list_10(len_of_elements):

    my_list=[random.randint(1,100) for x in range (len_of_elements)]
    return my_list

def generate_list_consist_of_10_smaller_list(amount_of_list,len_of_elements,variable):

    big_list=[generate_random_number_list_10(len_of_elements) for x in range (amount_of_list)]
    print (*big_list,sep="\n")
    if variable%2 == 0:
        print("Even variable has been entered: "+repr(variable)+" so program have filtered all even number from the list ")
        filtered_list = [list(filter(lambda x: x%2==0, num)) for num in big_list]
        print (*filtered_list,sep="\n")
    if variable%2 != 0:
        print("Odd variable has been entered: "+repr(variable)+" so program have filtered all odd number from the list ")
        filtered_list = [list(filter(lambda x: x%2!=0, num)) for num in big_list]
        print (*filtered_list,sep="\n")

Это мой вывод

[96, 36, 19, 60, 90, 75, 30, 8, 98, 17]
[20, 81, 53, 65, 80, 5, 57, 55, 45, 41]
[80, 82, 49, 66, 47, 50, 87, 94, 78, 7]
[9, 64, 71, 95, 77, 53, 45, 52, 70, 69]
[13, 17, 62, 87, 27, 15, 56, 27, 96, 55]
[33, 83, 96, 65, 65, 80, 19, 79, 25, 95]
[38, 54, 98, 87, 98, 32, 20, 74, 93, 41]
[74, 45, 3, 59, 62, 83, 71, 35, 75, 7]
[14, 2, 54, 93, 83, 25, 22, 61, 90, 82]
[53, 99, 40, 66, 2, 13, 40, 17, 32, 11]

Четная переменная введена: 8, поэтому программа отфильтровала все четные числа из списка

[96, 36, 60, 90, 30, 8, 98]
[20, 80]
[80, 82, 66, 50, 94, 78]
[64, 52, 70]
[62, 56, 96]
[96, 80]
[38, 54, 98, 98, 32, 20, 74]
[74, 62]
[14, 2, 54, 22, 90, 82]
[40, 66, 2, 40, 32]

Как сохранить вывод в виде TXT-файла. Я хочу сделать это самым простым способом. Мой коллега сказал, что я мог бы использовать Context Manager, но я не знаю, как он работает. Может ли кто-нибудь помочь мне и в этом вопросе.

Если у меня два условия, нужно ли что-то добавлять в обоих условиях? Есть ли способ написать просто вывод независимо от того, какой будет переменная (четная или нечетная)

1 Ответ

1 голос
/ 19 марта 2020

до:

with open("file.txt", "w") as file:
  for element in filtered_list:
    file.write(element + "\n")
...