코드컨벤션이란
코드 스타일 통일하는 약속
파이썬은 PEP-8 이라는 컨벤션 가이드 제공
convention이란
(국가나 지도자 간의) 조약[협약]
WHY
개발자들 간에 가독성 좋은 코드를 만들기 위해
파이썬에서는 네이밍 컨벤션으로
변수 / 함수를 네이밍할 때는 Snake 표기법
Class를 네이밍할 때는 Pascal 표기법을 사용합니다.
Pascal : NahyunIsVeryGood
각 단어를 대문자로 구별합니다.
Snake : nahyun_is_very_good
각 단어를 언더바( _ )로 구분합니다. 모양이 뱀과 비슷하게 생겼다고 해서 지어진 이름입니다.
클래스, 함수, 변수 등을 네이밍할 때는 이름만 보고 해당 코드가 어떤걸 의미하는지 추측할 수 있어야 합니다. -가독성도 훨씬 좋습니다.
local variable 'answer' referenced before assignment
할당 전에 참조되는 로컬 변수 'answer'
global은 전역 변수를 만들어주는 선언입니다
global 변수는 대부분의 경우 쓸 필요가 없고, 자주 쓰면 좋지 않습니다. 저희가 global 변수에 대해 설명을 드린 것은, local 변수와의 차이를 이해하는 것이 중요하기 때문입니다.
정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.
def solution(n):
answer = 0
for i in range(0, n + 1, 2):
answer += i
return answer
answer를 왜 0이라고 넣는거죠?
선언과 동시에 초기화를 해두시면 됩니다.
int answer = 0
초기화를 안하면 쓰레기값이 들어가게 됩니다.
answer 에 -7765240 이런 값이 들어갈 수도 있다는거죠.
비록 이 예제에서는 항상 입력을 받기 때문에 필요가 없다 해도, 늘 변수는 0 이건 "" 이건 초기화를 해두시는 습관이 중요합니다.
그렇지 않을 경우 나중에 어디서 어떤 이유로 원하는 결과가 안나오는지 디버깅하는데 시간을 많이 뺏기실 수도 있답니다^^
Iterable
iterable 객체 - 반복 가능한 객체
대표적으로 iterable한 타입 - list, dict, set, str, bytes, tuple, range
19. for in 반복문, Range, enumerate 에서 iterable한 타입과 iterable한 타입을 확인하는 방법이 있습니다.
상수는 all대문자이고 한번 선언하고 바뀌지 않는 값이 바뀌지 않는다.
함수의 네이밍은 그 함수의 역할표현을 해준다.
test라는 변수는 fun1() 에서만 사용 가능하다
전역함수와 지역함수 구분!!
type() 어떤 자료형인지 알수 있는 함수