숫자 목록에서 가장 큰 소수를 찾는 프로그램을 작성 중입니다. 기본적으로 [123, 1233]
이있는 목록은 1233에 4 개의 숫자가 있고 최대 크기이기 때문에 4를 반환합니다. 또 다른 예는 [12, 4333, 5, 555555]
이 6을 반환하기 때문입니다. 555555에는 6 개의 숫자가 있기 때문입니다.파이썬 리턴 문이 실행되지 않음
여기 내 코드입니다. 이제
def place(listy):
if len(listy) == 1:
decimal = len(str(listy[0]))
print(decimal)
else:
if len(str(listy[0])) >= len(str(listy[1])):
new_list = listy[0:1]
for i in listy[2:]:
new_list.append(i)
place(new_list)
else:
place(listy[1:])
, 내가 print(decimal)
를 사용할 때 작동,하지만 난 return decimal
에 print(decimal)
를 변경하는 경우, 그것은 아무것도 반환하지 않습니다. 왜 이런거야? 이 문제를 어떻게 해결할 수 있습니까? 나는 많은 시간을 뛰는 이러한 반환 진술을 보았습니다. 미리 감사드립니다!
소스 코드에 탭과 공백이 섞여있는 것 같습니다. 그건 좋지 않습니다 ... – bernie
return 문과 함께'place (listy)'를 호출하면 인쇄되지 않습니다.'print place (listy)'대신에 반환 된 값을 출력합니다. 당신이하는 일인가요? 귀하의 질문에 조금 막연한 것 같습니다 – That1Guy
"아무것도 반환하지 않음"이란 무엇을 의미합니까? 이 함수를 호출하는 코드를 제공하십시오. – bereal