У вас есть пара проблем в вашем коде:
list=[]
Как упоминал Патрик, не используйте ключевые слова в качестве имен переменных.
while word != 'end':
a = int(input("add int: "))
b = float(input("add float: "))
word = input("add text (end stops): ")
Когда вы выполняете этот код, выпродолжайте получать новый ввод, но вы выбрасываете свой старый ввод.Вам нужно сохранить ваш старый ввод, если вы хотите использовать его позже.например:
word = input("add text (end stops): ")
all_string_inputs = []
while word != 'end':
all_string_inputs.append(word)
word = input("add text (end stops): ")
В приведенном выше коде я сохраняю более старые входные данные в списке all_string_input
.
Если вы хотите ввести только 3 значения, не используйте некоторое время.
def fixlist(lst, st):
list=[]
for item in lst:
list.append(lst)
for y in item:
list.append(st[item])
return [lst, st]
Что вы собираетесь здесь делать?в приведенном выше коде вы перебираете элементы в lst
, для которых вы вводите пустой список.И в конце вы вернете свой вклад.Не меняя это.Также обратите внимание, что st[item]
не определен, так как item
не является целым числом int.
Если вы хотите добавить к существующему списку внутри функции, вам нужно использовать следующую схему:
def fixlist(lst, st):
lst.append(st)
Выше будет изменен существующий список.Если вы хотите создать новый список, вам нужно вернуть новый список:
def fixlist(lst, st):
new_list = lst+[st]
return new_list
Выше будет создан новый список с lst
и st
, и он будет возвращен.
Попытайтесь исправить свой код сейчас, если это все еще не помогло, отредактируйте вопрос своими попытками.