멋쟁이 사자처럼 (백엔드)

python 기초

YunHyeong 2022. 5. 21. 16:14

python으로 알고리즘 문제를 풀거나 멋사 Django 수업을 들을 때 python 기본 문법의 이해가 부족하다고 생각해서 정리한다.

 

문자열

"Hello World"

'Python is fun' -> 'Python\'s fun' = "Python's fun"

"""Life is too short"""

'''Life is too short,  you need python'''

a= "Python"
b= "is fun"

a + b # "Python is fun"
a * 10 # "PythonPythonPythonPythonPythonPythonPythonPythonPythonPython"

# index접근
a= "Python"
print(a[0]) # P
print(a[-1]) # n
print(a[0:4])# Pyth
a[ : : :] # 이상 미만 간격
a[:8] # 처음부터 7까지
a[2:4]# 2부터 3까지

# 포맷팅
number = 10
day = "three"
a = "I ate %d apples. so I was sick for %s days." %(number, day)

#여러가지 문자열 함수
print(day.count(e)) # 2
print(day.find(h)) # 1 (index)
print(","join("abcd")) # a,b,c,d

## etc
upper() ,lower() # 문자열을 대문자, 소문자로 바꾼다
strip() # 공백을 없앤다
replace() # 문자열 교체
split() # 문자열을 파라미터 전달 기준으로 리스트로 만든다
#ex) "a,b,c,d."split(',') = ['a', 'b', 'c', 'd']

리스트

# 리스트
a = ["김", "박", "이"]
a = [1, 2, "김", "박", "이", ["Jane", "Happy"]]
a= [1, 2, 3]
b= [4, 5, 6]
c = a+b
print(c) = [1, 2, 3, 4, 5, 6]

# 함수들
append() # 리스트 마지막 추가
sort() # 오름차순 정렬
reverse() # 리스트 뒤집기
index() # 인덱스 반환
insert() # 특정 인덱스에 삽입 ex) index(0, 4) # 0번째 인덱스에 4삽입
remove() # 	특정 값을 지운다
pop() # 마지막 요소를 꺼낸다 # 마지막 요소가 리스트에서 지워진다
count() # 파라미터로 전달한 값의 개수를 반환한다
extend() # a = [1, 5, 3, 1, 1] # a.extend([2, 3]) # a = [1, 5, 3, 1, 1, 2, 3]

튜플

# 리스트와 달리 수정 불가
# 길이 값 모두 고정되어 있다
# 인덱싱 접근이나 슬라이싱은 가능
# 더하기를 통해서 튜플을 합치는 것도 가능하다
# 곱하기 역시도 가능

t1 = (1, 2, 'a', 'b') 
t2 = (3, 4)
t3 = t1+t2
print(t3) # (1, 2, 'a', 'b', 3, 4)

딕셔너리

# key를 통해서 value를 얻는다
# key를 반드시 중복없이 만들어야한다

dic = {
	"name": "Eric",
    "age" : 15
}

print(dic["name"]) # "Eric"

a = {1:'a'}
a['name'] = "익명"
print(a) # {1 : "a", "name" : "익명"}

del a["name"]
print(a) # {1:"a"}

 

숫자형

# e10(10의 10승)
a = 4.24e10 # 42400000000

# 사칙연산
// -> 몫을 표현할 때
/ -> 몫을 소수점까지 표현
% -> 나머지
** -> 제곱승

집합

s1 = set([1, 2, 3]) # s1 = {1, 2, 3}
print(s1)

s1 = set("Hello") # 순서가 없다
print(s1) # {'e', 'l', 'o', 'H'} # 중복된 요소는 지워진다

# 교집합
# s1 & s2
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
print(s1 & s2) # {4, 5, 6} 
print(s1.intersection(s2)) # {4, 5, 6}

# 합집합
# s1 | s2
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
print(s1 | s2) # {1, 2, 3, 4, 5, 6, 7, 8, 9} 
print(s1.union(s2)) # {1, 2, 3, 4, 5, 6, 7, 8, 9}

# 차집합
# s1 - s2
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
print(s1 - s2) # {1, 2, 3}
print(s1.difference(s2)) # {1, 2, 3}

# 값 1개 추가하기
s1 = set([1, 2, 3])
s1.add(4) 
print(s1) # [1, 2, 3, 4]

# 값 여러개 추가하기
s1 = set([1, 2, 3])
s1.update([4, 5, 6])
print(s1) # {1, 2, 3, 4, 5, 6}

 

'멋쟁이 사자처럼 (백엔드)' 카테고리의 다른 글

selenium(동적 크롤링)  (0) 2022.05.11