def checker(a_list):
for item in a_list:
if str(item).isdigit():
return True
else:
return False
내가 검사기에 대해 가지고있는 변수는 변수가 들어있는 네 개의 문자열 목록입니다. 다른 함수의 모든 입력 값에 숫자 만 들어 있는지 확인하기 위해 '체커'로 사용할 계획이었습니다.파이썬 for 루프는 첫 번째 항목 뒤에 True를 반환합니다.
문제점 : a_list의 첫 번째 항목이 숫자가 아닌 경우 검사기가 False를 반환합니다. 그러나 첫 번째 항목이 숫자이고 목록의 다른 항목이 아닌 경우 checker는 True를 반환합니다. 그러면 다음 함수가 숫자가 아닌 변수로 진행하고 오류가 발생합니다.
내 함수가 True를 반환하기 전에 전체 목록을 검사하도록하려면 어떻게해야합니까? 또는 필요한 경우 어떻게하면 새로운 기능을 만들 수 있습니까? 감사
목록에있는 모든 항목이 숫자 인 경우이 확인해야
목록의 모든 구성원을 숫자로 확인 하시겠습니까? – babygame0ver
'return' 문은 전체 함수를 빠져 나갑니다 (https://www.python-course.eu/python3_functions.php 참조). 그래서 for 루프의 첫번째 반복은'return'을 치고 함수를 끝낼 것입니다. 반복 작업을 수행하고 루프 내에서 숫자가 아니면'False'를 반환하고 for 루프 다음에 'return True'를 반환하는 것이 좋습니다. 'all' https://docs.python.org/3/library/functions.html#all – BorrajaX
을 살펴볼 수도 있습니다. 루프에서 'return true'*를 사용하지 마십시오. 루프에서 항목이'.isdigit'이 아닌지 확인하십시오. 루프가 완료되면'return True'를 움직이십시오. – wwii