초보 개발자
1주차 1일차 본문
오늘 파이썬 기초(1주차), 웹 프로그래밍 기초(1~2주차)까지 공부를 했다.
솔직히 오늘 공부했던 것들은 다 알고 있던 내용들이라 그냥 빠르게 훑고 넘어가는 식으로 공부를 하였다.
그 중에 기억에 남는 내용들을 보자면..
Python
기본적으로 딕셔너리와 리스트에서 리스트는 순서에 의미를 둘 수도 있고, 딕셔너리는 순서에 의미를 전혀 두지 않는다.
그렇다고 리스트에 있어 순서는 중요하다!!라고도 할 수 도없지만 유의미할 때가 있다는 정도라고 생각한다.
파이썬은 들여쓰기가 중요하다 파이참에서 ctrl + alt + i 를하면 자동 들여쓰기를 해주는 신세계를 경험할 수 있다..
반복문에서 enumerate를 사용하면 index를 사용할 수 있다. ex ) for idx, i in enumerate(something) idx는 0부터 시작
튜플과 리스트는 비슷해보이지만 불변형이다 한번 선언하면 고칠 수가 없다!!
.집합은 set() 메써드로 만들 수 있다. ex) set([1,2,3,1,2,3,5,35,6,7,2]) 이런식으로
딕셔너리와 같은 {}안에 리스트 처럼 생성이되며 중복된 값이 들어가지 않는다.
교집합 차집합 합집합도 구할 수 있다.
a 와 b는 각각 집합이라고 했을 때
a & b 는 a,b의 교집합
a | b는 합집합
a - b는 차집합 (a에서 b와 겹쳐지는 것은 제외)
문자열 앞에 f를 적어주면 f_string이 된다.
js에서 `${}`와 비슷한 기능을 한다.
f'{변수}'를 적어주면 문자열안에 변수를 편하게 사용가능
이건 쓸모 있을거같은 내용인데
한줄의 마법이라고 불리운다.
if num % 2 == 0:
짝수
else:
홀수
이런식으로 4줄로 표현해야 하는 걸
'짝수' if num % 2 == 0 else '홀수'
이렇게 간단하게 해줄 수 있다.
반복문에서도 가능하다.
a=[1,2,3,4,5]를 [2,4,6,8,10] 이렇게 나타내고 싶을 경우에
b=[]
for i in a:
b.append(i*2)
이렇게 해야하지만
[ i*2 for i in a ]이렇게 한줄로도 간편하게 가능하다
또한 JS에서 화살표 함수와 비슷하다고 생각이 든 것이 람다였다.
list(map(lambda x: '성인' if x['age'] > 20 else '청소년 ', people ))
함수에 매개변수에 여러가지 조건을 넣어줄 수도 있다.
def a(arg1, arg2='default')를 해주면
함수를 호출할 때 인자를 2개 넣어주거나 하나만 넣어줘도된다.
하나만 넣어줄 경우에는 arg1에 들어간다. 만약 ='default'를 넣어주지 않고
def a (arg1,arg2)에서 인자를 하나만 넣었을 경우에는 아래와 같은 에러가 난다.
# TypeError: func1() missing 1 required positional argument: 'arg2'
but 순서를 바꿔
def a(arg1='default', arg2)를 해주면 안된다!!! 아래와 같은 에러가 뜬다.
# SyntaxError: non-default argument follows default argument
따라서 기본매개변수를 설정하려면 무조건 뒤부터 순서대로 해야한다.
이름이 정확하지는 않지만 매개변수에 *를 적어주면 가변매개변수가되고 -가변인자함수
**를 적어주고 인자에 이름=값 으로 적어주면 (갯수 상관 없음) 딕셔너리가 된다. -키워드인자
일반 매개변수과 가변매개변수를 같이 넣어줄 경우 기본 매개변수 처럼 무조건 가변매개변수를 뒤에다 놓아야하며 그리고 한번만 사용가능 하다. ex ) arg1, arg2, *arg3 이런식으로 말이다. ex) *arg1, arg2 이렇게 해주면 안됨!!