< 3주 차 >
Python, Git bash 다운로드
venu(virtual envirionment)는 프로젝트별로 패키지들 담아두는 곳 (라이브러리 담아두는 곳)
python 문법은 javascript 문법보다 훨씬 직관적
print 하면 체크된 저기에 바로 찍힘
리스트에 추가
javascript 에서는 .push()
python 에서는 .append()
파이썬에서는 들여쓰기가 굉장히 중요
(중괄호를 따로 사용하지 않기 때문)
==
|
같다
|
!=
|
같지 않다
|
is not None
|
같지 않다
|
같은 말
count = count + 1
count += 1
태그 안의 텍스트 찍고 싶으면 태그.text
태그 안의 속성 찍고 싶으면 태그['속성']
태그와 속성값으로 찾는 방법 soup.select('태그명[속성="값"]')
한 개만 가져오고 싶은 경우 soup.select_one('태그명[속성="값"]')
SQL
행/열의 생김새가 정해진 엑셀에 데이터를 저장하는 것과 유사
조금 더 정형화 되어 있음
바뀐 환경에서 유연하게 대처 어려움
NoSQL(Not only SQL)
딕셔너리 형태로 데이터를 저장해두는 DB
데이터가 그때 그때 쌓임 -> 조금 더 유연하게 쓰일 수 있음
대표적인 것 mongo DB
pymongo 기본 코드
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
doc = {
'name':'bob'
'age':27
}
db.users.insert_one(doc)
db.users.insert_one({'name':'bob', 'age':27})
두 개 같은 말
same_ages = list(db.users.find({'age':21},{'_id':False}))
'_id':False
_id값은 나타내지 말아라~
# 저장 - 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)
# 한 개 찾기 - 예시
user = db.users.find_one({'name':'bobby'})
# 여러개 찾기 - 예시 ( _id 값은 제외하고 출력)
all_users = list(db.users.find({},{'_id':False}))
# 바꾸기 - 예시
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
update_many로 하면 이름 bobby인 애들 모두 찾아서 나이 19로 바꿔라~ (잘 쓰지는 않음)
# 지우기 - 예시 (얘도 거의 안씀)
db.users.delete_one({'name':'bobby'})
delete_many도 있음