로운's 기술노트

[웹개발종합반] 3주차 본문

웹개발종합반_'21.08~09

[웹개발종합반] 3주차

로운's 2022. 1. 4. 15:42

파이썬: 자바스크립트보다 좀더 직관적 (중괄호'{}'대신 함수의 위치로 판단)

# 변수, 자료형, 함수, 조건문, 반복문

ㅇ변수
: 숫자와 숫자, 문자와 문자는 합산 가능(문자와 숫자의 합이 필요할 경우, 숫자를 문자화 필요 ex. num=str(2))

1. 숫자 + 숫자
   a = 2 
   b = 3
   print(a+b) = 5

2. 문자 + 문자
   a = kanguk 
   b = lee
   print(a+b) = kanguklee   

3. 문자 + 숫자(문자화해야만 가능)
   a = kanguk 
   b = str(2)
   print(a+b) = kanguk2      


ㅇ 자료형 (자바스크립트와 거의 유사)

1. 리스트
   a_list = ['사과', '배', '감']
   a_list.append('수박')
   print(a_list) = ['사과', '배', '감', '수박']

2. dict
   a_dict = {'name' : 'bob', 'age' : '27'}
   a_dict['height'] = 178
   print(a_dict) = {'name' : 'bob', 'age' : '27', 'height' : '178'}


ㅇ 함수 ('sum'이라는 함수를 임의로 만든것으로 'aa'등으로 함수명 치환해도 무방)
   def sum(num1,num2):
        return num1+num2
   result = sum(2,3)
   print(result) = 5

ㅇ 조건문
   age = 25
   if age > 20:
        print('성인입니다')
   else:
        print('청소년입니다')
   = 성인입니다 

ㅇ 반복문
   fruits = ['사과', '배', '배', '감', '수박', '귤', '딸기']
   for fruit in fruits:
        print(fruit) = 사과



수박

딸기


ex. 딕셔너리 예제(응용)
   people = [{'name': 'bob', 'age': 20}, 
                {'name': 'carry', 'age': 38},
                {'name': 'john', 'age': 7},
                {'name': 'smith', 'age': 17},
                {'name': 'ben', 'age': 27}]
   for person in people:
        print(person['name'],person['age'])
   = bob 20
      carry 38
      john 7
      smith 17
      ben 27

   people = [{'name': 'bob', 'age': 20}, 
                {'name': 'carry', 'age': 38},
                {'name': 'john', 'age': 7},
                {'name': 'smith', 'age': 17},
                {'name': 'ben', 'age': 27}]
   for person in people:    
        if person['age'] < 20:
print(person)
   ={'name': 'john', 'age': 7},
     {'name': 'smith', 'age': 17},

 

 

ㅇ requests 써보기

import requests # requests 라이브러리 설치 필요

r = requests.get('url')

 

rjson = r.json()

gus = rjson['RealtimeCityAir']['row'])

for gu in gus:
    gu_name = gu['MSRSTE_NM']
    gu_mise = gu['IDEX_MVL']
    if gu_mise > 100 :
        print(gu_name,gu_mise)


ㅇ 크롤링 기본 세팅(headers : 브라우저에서 엔터친 것과 같은 효과)
import requests
from bs4 import BeautifulSoup

headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get('대상url',headers=headers)

soup = BeautifulSoup(data.text, 'html.parser')

# 코딩 시작



ㅇ 몽고db 동작여부 확인하기
크롬 주소창에 "http://localhost:27017/" 작성
> 정상작동 "It looks like you are trying to access MongoDB over HTTP on the native driver port."



ㅁ pymongo

ㅇ 기본코드(# insert / find / update / delete)
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta

# 코딩 시작


# 저장 - 예시
doc = {'name':'bobby','age':21}
db.users.insert_one(doc)

# 한 개 찾기 - 예시
user = db.users.find_one({'name':'bobby'})

# 여러개 찾기 - 예시 ( _id 값은 제외하고 출력)
same_ages = list(db.users.find({'age':21},{'_id':False}))

# 바꾸기 - 예시
db.users.update_one({'name':'bobby'},{'$set':{'age':19}})
db.users.update_many({'name':'bobby'},{'$set':{'age':19}})

# 지우기 - 예시
db.users.delete_one({'name':'bobby'})
db.users.delete_many({'name':'bobby'})

'웹개발종합반_'21.08~09' 카테고리의 다른 글

[웹개발종합반] 5주차  (0) 2022.01.10
[웹개발종합반] 4주차  (0) 2022.01.08
[웹개발종합반] 2주차  (0) 2022.01.03
[웹개발종합반] 1주차_2108  (0) 2021.09.29
Comments