LPTHW로 파이썬을 배우고 있으며 연습 문제 36을 작성하려고합니다. 사용자가 특정 문자열을 입력하기를 원합니다. 10 가지 분야의 집합에서. 입력을 정의 된 목록과 비교할 수는 있지만 사용자를 단 5 개로 제한 할 수는 없습니다. 오히려 사용자를 5 개의 입력으로 제한 할 수는 있지만 둘 다를 수행 할 수는 없습니다. python - 사용자 입력을 목록과 비교하고 항목을 제한하여 새 목록에 추가합니다.
나는discipline_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
가 그럼 난 빈리스트
your_disciplines = []
여기 discipline_list과 사용자 입력을 비교하고 새로운 사용자 입력을 추가하기위한 코드의 생성 분야의 목록 (원래 문자열-이름을 생성 빈 목록 (다른 대답의 코드)
while True:
d = raw_input("enter your choice of discipline >> ")
d = str(d)
found_d = False
for i in discipline_list:
if d == i:
found_d = True
if found_d:
your_disciplines.append(d)
else:
print("Incorrect entry")
for-loop를 사용하여 사용자 항목을 제한하지만이를 비교와 결합 할 수는 없습니다. 내 시도는 모두 5 회 이상 실행되었습니다.
for d in range(0, 5):
도움이 되겠습니다. 당신이 while
루프를 사용하려면
귀하의 코드가 유일한 출구로
your_disciplines
의 길이를 확인하려면 정말 잘. 사용자 입력이 주 목록에 있는지 확인하고 항목이 새 사용자 목록에 없는지 확인하기위한 조건을 추가하기 만하면됩니다 (사용자가 올바른 입력을 반복 할 수 없기 때문에). 그것은 지금 아주 잘 작동합니다. 감사합니다. 'discipline_list에 d 개 있고 your_disciplines에 d가 없다면 : 'your_disciplines.append (d)' –