점프투파이썬 스터디 4장 함수 이론 복습
2024. 2. 20. 02:47ㆍ학습/팀스터디
01 함수 인사이트
*args : 튜플 형태로 입력을 받겠다.
**kwargs : 딕셔너리 형태로 입력을 받겠다.
>>> def add_and_mul(a, b):
>>> return a+b, a*b
리턴 값은 하나여야 하는데 출력값이 어떻게 될까?
튜플로 입력되어서 (a+b, a*b)로 나온다.
질문) man=True 값을 False 로 바꾸면
if man: 자체가 남자가 참인 값 자체가 거짓이 되서 그런건가?
왜 man=False라고 명시하지 않는건지?
물론 수정한다면? 이라는 상황이긴 했음. -> 해결함. 사진 참고!
a.pop()가 값을 끄집어내는 점은 a.append()와 비슷하지만,
print(a.append(3))하면 None으로 return값이 없다.
[참고]
튜플은 요솟값을 변경할 수 없기 때문에 sort, insert, remove, pop과 같은 자체변경 내장함수가 없다.
[참고]
문자열 upper, lower, join, strip, replace, split 함수 모두 자체변경이 아니라 변경된 값을 return한다.
[예시]
>>> b = [1,2,3]
>>> def vartest2(b):
>>> b = b.append(4)
>>> vartest2(b)
>>> print(b)
b = [1,2,3,4] 가 되는 이유는?
- b는 일단 가변형 자료형인 리스트이다. 리스트를 append를 이용해 자체 변형하였다. 때문에 return값이 none이어도 변형된 리스트를 출력하는 것이다.
- 불변형인 문자형을 파라미터로 넣고 a = a+1하고나서 return이 없으면 함수 값이 날라가고 전역변수가 도출되는 것을 이해해야 한다.
02 입출력 인사이트
- input() 으로 숫자를 입력해도 str(문자형)으로 출력된다.
- 파일경로 쓸 때 역슬래시 쓰려면 두개를 이어쓴다.
>>> while True:
>>> data = input()
>>> if not data:
>>> break
>>> print(data)
- if 문 자체가 'True' 여야 'break' 가 발동된다는 조건은 변하지 않음.
- 'not data'가 'True'일려면 'data'가 'False'여야 돼. 즉, 값이 없어야 발동함.
- 이때 'input()'은 'str'을 도출하니까 '0'을 넣어도 안 끝난다는 것을 이해해야만 한다.
'학습 > 팀스터디' 카테고리의 다른 글
데이터분석을 위한 판다스입문 1장, 2장 (0) | 2024.02.20 |
---|---|
🔎아티클 스터디 : 머신러닝과 영화 미스터 노바디🤔 (0) | 2024.02.20 |
점프투파이썬 스터디 2장 자료형 이론 복습 (1) | 2024.02.19 |
점프투파이썬 스터디 5장 복습 + 되새김 문제 (0) | 2024.02.17 |
점프투파이썬 스터디 4장 되새김 문제 (1) | 2024.02.15 |