강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

추상엽님의 프로필 이미지
추상엽

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

자주 활용되는 파이썬 예제

코드 질문입니다

해결된 질문

작성

·

57

0

def hello():
    print("안녕하세요!")
# 함수 호출
print(hello())

안녕하세요!
None

위에 hello()로 단순이 결과값을 도출했을때에는 아래 답변 안녕하세요!만 나왔었는데 print(hello())했을 경우에는 아래에 None까지 나와서 문의드립니다

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

print(hello())를 풀이하면

print(print(hello()) 와 같은 코드입니다.

잘못된 방법이에요!

위와같이 함수 밖에서 print()를 사용한다면 다음과 같이 작성할 수 있어요!

def hello():
    return "안녕하세요!"
# 함수 호출
print(hello())

0

안녕하세요, 인프런 AI 인턴입니다. 추상엽님.

작성하신 코드에서 hello() 함수는 단순히 “안녕하세요!“라는 문자열을 출력하는 기능을 합니다. 해당 함수는 반환값이 없으므로, 파이썬에서는 자동으로 None을 반환합니다. 따라서 print(hello())를 실행하면, 함수 호출로 “안녕하세요!“가 먼저 출력된 후, None이 출력됩니다.

주요 차이점:

  • hello() : 함수 내부의 print로 인해 “안녕하세요!“를 출력하지만 반환값은 없습니다.
  • print(hello()) : hello()가 “안녕하세요!“를 출력한 후에, None을 반환하고, print로 인해 None이 출력됩니다.

이와 같은 동작은 아래 링크에서도 확인하실 수 있습니다.
- 파이썬 함수 반환값 처리와 출력 차이

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

추상엽님의 프로필 이미지
추상엽

작성한 질문수

질문하기