본문 바로가기
컴퓨터 프로그래밍/Python

점프 투 파이썬(2022) 4-1.4~4-1.6

by __ALE__X__ 2022. 12. 27.

  • 함수의 결괏값은 언제나 하나이다
    • 2개를 입력하게 된다면 튜플 자료형으로 결괏값 돌려줌
    • 튜플 값을 2개 값처럼 받고 싶다면 결과1, 결과2 변수에 넣기
  • return을 만나면 바로 결괏값을 보여줌, 그게 끝~!

  • 특별한 상황에서 함수 빠져나가기: return (오타가...)
  • ***결괏값 없음, BUT 문자열 출력 =/= 결괏값 존재

앞의 두 사진의 실행결과

stupid를 입력했을 때 함수가 실행되지 않고 끝나는 것을 볼 수 있음.

  • 매개변수에 들어갈 값이 변하지 않는 경우: 초깃값 설정

  • ***초깃값 설정 시, 위치는 항상 마지막으로!

위 사진의 실행결과

초깃값 설정시, True를 입력하지 않아도(Alex, 67) I am a woman이 출력되는 것을 볼 수 있음.

이것때문에 진짜 골머리를 앓았다.. 다르면 왜 결괏값은 그렇게 나오는데?!...

매개변수 =/= 함수 밖의 변수

매개변수는 함수 안에 쓰여진 미지수 x 같은 것임. 이름만 빌린 것이라고 생각해서 이해했다.

이해완료!

  • 매개변수와 함수 밖의 변수를 같게 쓰고 싶을 때
    • return 사용
    • global 사용(사용비추천)
     

  • 간단한 함수일때는 def 대신 lambda 사용
    • lambda는 return이 없어도 결괏값을 돌려준다
    • 함수이름 = 람다 매개변수1, 매개변수2 : 수행할 문장

 

위 두 이미지의 실행결과

이번 챕터는 다른 부분들보다 헷갈렸다... 매개변수랑 함수 밖 변수랑은 다른걸 알겠는데.. 아예 다르면 결괏값이 그렇게 안나오지 않나.. 하면서 골머리를 앓았는데 컴공 전공 친구에게 물어보고 정확히 이해할 수 있었다! 고맙다~^,^