Cộng đồng Hỏi & Đáp của Inflearn
함수 (function without return) none출력 질문
Viết
·
328
0
def awe_sum(a,b):
print(int(a)+int(b))
a=2
b=3
print(awe_sum(a,b))
이 코드 실행 결과
5
None아래처럼 나오는데 밑에 None은 왜 생기는 건가요?
pythonpandas
Câu trả lời 2
0
0
funcoding
Người chia sẻ kiến thức
안녕하세요. 답변 도우미입니다.
해당 부분은 해당 함수 리턴값이 없어서 출력이 되는 것인데요. 구체적으론느
awe_sum 함수는 두 개의 인자 a와 b를 더해서 그 결과를 출력하고 있습니다. 그런데 함수는 아무런 값을 return하지 않기 때문에 Python이 자동으로 None을 리턴하게 됩니다. 따라서 print(awe_sum(a, b))는 실제로 print(None)을 실행하는 것과 같아요.
이를 고치려면 두 가지 방법이 있습니다.
1. awe_sum 함수가 값을 리턴하게 변경하기
def awe_sum(a, b):
return int(a) + int(b)
a = 2
b = 3
print(awe_sum(a, b))
이렇게 하면, awe_sum(a, b)가 5를 리턴하므로 print(5)가 실행되어 5만 출력됩니다.
2. awe_sum 함수를 호출할 때 print를 사용하지 않기
def awe_sum(a, b):
print(int(a) + int(b))
a = 2
b = 3
awe_sum(a, b)이렇게 하면 함수 내부에서 이미 print를 사용했으므로, 함수를 호출할 때 print를 다시 사용할 필요가 없습니다.
감사합니다.




