Я столкнулся с проблемой, так как мои результаты были продублированы.
У меня есть небольшое представление о том, почему это дублирует способ, однако я не знаю, как вызывается проблема.
В настоящее время выходные данные дублируются на 3 (количество значений, содержащихся в массиве gen_coms
.
Следующие фрагменты кода относятся к этой проблеме (Пожалуйста, не обращайте внимания на ВСЕ комментарии вкод):
Первая функция:
gen_coms = []
def getCommands():
for file in os.listdir(com_dir):
if file.endswith(com_ext):
global gen_coms
a = gen_coms.append(file[:-len(com_ext)]) # Looks good however formats output as ['a','b','c'] is there a way to format it as 'a','b','c' or a,b,c ?
Вторая функция:
def genTerm():
while True:
gin = raw_input('> ')
for commands in gen_coms: # Prints out 3 vars. This didn't happen before but I am assuming thats because gen_coms now technically has a value of 3?
if gin in gen_coms:
print gin
else:
print('Unrecognized command!')
Пример ввода / вывода, помогающий показать, какую проблему я получаювыглядит так:
> a # This is the input -> a
a # Here down is output
a
a
Введен ввод a
и печатается правильный вывод, который также является a, а не один раз, как я ожидал, он стал 3. Это не ограничивается толькоa
но каждый вывод.
Не важные примечания:
Извините, если формат этого вопроса не самый лучший, мне очень трудно сосредоточиться и думать в целомна данный момент из-за отсутствия слиp и выполнит редактирование, исправляющее грамматику, орфографию и общий макет через минуту или две.
Спасибо, что нашли время прочитать этот длинный и, скорее всего, повторяющийся вопрос.