Не удается загрузить или сохранить текст. файл - PullRequest
0 голосов
/ 14 января 2020

Я написал код, но, видимо, он не сохраняет и загружает в мой текст. файл. Я был бы очень признателен, если бы вы взглянули на мой код и сказали мне, что не так, потому что мне очень тяжело разобраться с этим самостоятельно. Я не использовал pickle, так как это создавало трудности, связанные с кодированием, поэтому я попытался найти обходной путь и все, что сохранилось в моем txt. файл "Нет". Заранее спасибо.

def savedata(x):
    play_again = input("Are you willing to save existing progress? Y/N")
    if (play_again == "Y") or (play_again == "y"):
        print("Saving progress...")
        file = open('adam_malysz.txt', 'w')
        file.write(str(x))
        file.close()
        print("Your file has been called - adam_malysz.txt")
        print("Progress has been successfully saved.")
    else:
        print("Returning to main menu")
def arrayfancy():
    num1 = int(input("Select size of an array: "))
    value = []
    for i in range(num1):
        value.append(random.randint(1, 99))
    print("Printing data...")
    print(value)
    print("Sorting Array...")
    bubblesort(value)
    print(value)
    print("Average value is: ")
    print(statistics.mean(value))
    print("Minimum value is: ")
    print(min(value))
    print("Maximum value is: ")
    print(max(value))
    print("Your data has been successfully printed")

    if choice == 1:
       savedata(arrayfancy())

1 Ответ

0 голосов
/ 14 января 2020

Ваш arrayfancy() не имеет оператора return, поэтому он возвращает None, когда достигает конца функционального блока. savedata(x) затем успешно напишите «None» в ваш файл.

Вы можете добавить return value в конце arrayfancy(), это решит вашу проблему.


Я протестировал код ниже и я получаю текстовый файл, содержащий массив.

def savedata(x):
    play_again = input("Are you willing to save existing progress? Y/N")
    if (play_again == "Y") or (play_again == "y"):
        print("Saving progress...")
        file = open('adam_malysz.txt', 'w')
        file.write(str(x))
        file.close()
        print("Your file has been called - adam_malysz.txt")
        print("Progress has been successfully saved.")
    else:
        print("Returning to main menu")

def arrayfancy():
    num1 = int(input("Select size of an array: "))
    value = []
    for i in range(num1):
        value.append(random.randint(1, 99))
    print("Printing data...")
    print(value)
    print("Sorting Array...")
    bubblesort(value)
    print(value)
    print("Average value is: ")
    print(statistics.mean(value))
    print("Minimum value is: ")
    print(min(value))
    print("Maximum value is: ")
    print(max(value))
    print("Your data has been successfully printed")
    return value

if choice == 1:
    savedata(arrayfancy())
...