Python: строка, добавленная в список, не отображается - PullRequest
0 голосов
/ 01 ноября 2019

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

Я попытался проверить userInput, и его значение равно 1, поэтому, насколько я понимаю, если userInput == 1: тогда имя должно быть добавлено в список родителей. Однако список «родители» совершенно пуст.

import json

parents = []
children = []
name = input("What is your name? ")
user = []

userInput = input("Are you a parent or child? Please enter 1 or 2. ")
if userInput == "":
    print("Please select an option. ")
else:
    userInput == int(userInput)

if userInput == 1:
    parents.append('name')
elif userInput == 2:
    children.append('name')


with open('parentslist.txt', 'w') as file_object:
    json.dump(parents, file_object)

with open('parentslist.txt') as file_object:
    contents = file_object.read()

print(contents)

print("\n")

for i in range(len(parents)):
    print(parents[i])

Как вас зовут? Джон Смит
Вы родитель или ребенок? Пожалуйста, введите 1 или 2. 1
[]

Насколько я понимаю, код должен напечатать:

Джон Смит

[Джон Смит]

первая строка - содержимое файла json после его записи, а вторая - вывод цикла for, который печатает содержимое списка 'parent'.

1 Ответ

0 голосов
/ 01 ноября 2019

В коде есть две основные проблемы:

  • Используйте "=" вместо "==" для назначения преобразованного значения userInput = int(userInput) или вместо него можно использовать int(userInput) == 1 в ifусловие
  • Используйте имя без кавычек для добавления parents.append(name), чтобы вывести фактическое имя вместо строки "имя"

Вы также можете использовать цикл while для повторения« Вы родитель или ребенок? Пожалуйста, введите 1 или 2. », пока пользователь не предоставит действительный ввод (1 или 2).

Приветствия!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...