String
- "abc" + "de" == "abcde"
- "abc" * 2 == "abcabc"
- a[0:4] == a[0]~a[3]
- a[:8] == a[0]~a[7]
- a[2:] == a[2]~
- X.count('b') : X에서 'b'의 개수
- X.find('b') : X에서 처음 나온 'b'의 index
- ",".join('abc') =='a,b,c' : " "안의 값을 사이에 넣어줌 -> 리스트를 문자열로 바꿀 때 활용
- X.replace("abc',"ggg") : X 문자열 안에 'abc'를 'ggg'로 교체
- X.split("") : ""기준으로 나눔 -> X.split() 시 공백 기준으로 나눠줌
List
- X.append(4) : 마지막에 4 추가
- X.sort(), X.reverse() : 정렬, 역순정렬
- X.index(1) : 1이 있는 index 반환
- X.insert(3,5) : index=3 에 5 대입
- X.remove(3) : 첫번째로 나오는 3 삭제
- X.pop() : 맨 마지막 꺼내기 -> append, pop 으로 스택 구현 가능
Dictionary
- X.keys() : X의 key 객체 반환 -> list(X.keys()) => 리스트 형태
- X.values() : X의 values 객체 반환 -> list(X.values()) =>리스트 형태
- X['key'] vs X.get('key') : 존재하지 않는 키 값일 경우 전자는 오류발생, 후자는 None 반환
- X.get('key','default') : key값이 없을 경우 'default' 반환
.format
- "{0}, {1}".format(a,b) : 0, 1자리에 각각 a, b 대입
- "{abc},{de}".format(abc=10,de=5} : abc와 de자리에 각각 10,5 대입
- {.2f}.format(a) : a를 소수점 두번째까지까지 출력
Boolean
- 0이 아닌 숫자 == True vs 0, None == False
- [] 빈 리스트 == False vs [1,2,3] 값이 있는 리스트 == True
- "" 빈 문자열 == False vs "abc" 문자 있는 문자열 == True
a= [1,2,3]
while a: #a 배열에 값이 존재하는 동안
a.pop()
# 결과 : 3,2,1
- A is B : A 와 B가 같은 객체(같은 주소)이면 True
a = [1,2,3]
b = [1,2,3]
a is b == False
#a와 b은 각각 따로 만들어진 다른 객체(다른 주소)기 때문
리스트의 복사
b = a의 문제점
a=[1,2,3]
b=[]
b = a
a[1] = 6
# a = [1,6,3]
# b = [1,6,3]
#a와 b가 동일한 리스트 객체를 가르키기 때문 (같은 주소)
a[:] 의 사용
a=[1,2,3]
b=[]
b = a[:]
a[1] = 6
# a = [1,6,3]
# b = [1,2,3]
copy(a)의 사용
a=[1,2,3]
b=[]
b = copy(a)
a[1] = 6
# a = [1,6,3]
# b = [1,2,3]
a, b = b, a : Swap(a,b)
if 문
- not A : A가 거짓이면 참
- x in 리스트, x in 튜플, x in 문자열 : 리스트/튜플/문자열 안에 x가 있으면 참
if 1 in [1,2,3]:
return True
# True
not in 도 가능하다.
if 1 not in [3,4,5]
return True
#True
pass : if문 실행 시 아무것도 동작하기 싫을 때
if 1 in [1,2,3]:
pass
else:
print("1이 없다")
# pass문 수행되어 결괏값 x
for 문
- continue : 수행시 for문의 처음으로 돌아간다.
- 리스트 내포(List comprehension)
a = [1,2,3]
result = []
for num in a:
result.append(num)
# 위와 아래는 같다
a = [num for num in a]
r = [x*y for x in range(3,10) for y in range(1,10)]
#다중 for문도 가능하다
#3,6,9, ......
Function
- 함수에서 Return 값이 없을 경우 None을 돌려준다.
- args : 정해지지 않은 개수의 (일반)입력값을 받는 매개변수 (튜플)
def func(*args):
result = 0
for i in args:
result += i
return result
func(1,2,3)
# result = 6
func(1,2,3,4,5)
# result = 15
- **kwargs : 정해지지 않은 개수의 (문자열)입력값을 받는 매개변수 (딕셔너리)
def func(**kwargs):
print(kwargs)
func(a=1)
#{'a':1}
func(name='sjy',age=27)
#{'age':27, 'name' : 'sjy'}
- return 값 여러개면 하나의 튜플로 모든 값을 갖는다.
def func():
a=1
b=2
c=3
return a*b, b*c, c*a
x = func()
# a = (2,6,3)
j,k,l = func()
#j=2, k=6, l=3
lambda
lambda 매개변수1, 매개변수2, .... : 매개변수를 사용한 표현식
* 함수를 한 줄로 간결하게 만들 때 사용한다.
a = lambda x, y : x*y
result = a(3,4)
#result = 12
'떠올리는 공간' 카테고리의 다른 글
To Do List 만들기 - 1 (0) | 2021.01.12 |
---|---|
210106 Django - 첫번째 앱 장고앱 작성하기 튜토리얼 part3까지 완료 (0) | 2021.01.06 |
210106 Object (DOM,BOM ....) (0) | 2021.01.06 |
210102 자바스크립트 콜백, 클로져 등 (0) | 2021.01.03 |
210101 자바스크립트 문법 (0) | 2021.01.02 |