[코딩 공부] 10일차(2/22)

성철민·2023년 2월 22일
0

배움

목록 보기
10/42

Schedule1. 스파르타코딩클럽

내일배움캠프 5기 합류 전 기본적인 강의를 들어야 한다고 한다.

강의: [왕초보] 비개발자를 위한, 웹개발 종합반

웹개발을 위한 기본적인 강의 (HTML, CSS, JavaScript)

진도

  • Flask : 웹 애플리케이션 개발을 위한 파이썬 프레임워크
  • Django는 너무 무겁기 때문에 초보자를 위한 라이트한 개발 프레임워크
  • fetch()함수는 원격API를 간편하게 호출할 수 있다
  • 1) GET 요청: 통상적으로 데이터 조회(read)를 요청할 때 사용(?key=value형태)
  • 2) POST 요청: 통상적으로 데이터 생성(Create), 변경(Update), 삭제(Delete) 요청을 할 때 사용
> 감상
	_mongoDB를 사용해보고 웹사이트 크롤링한 결과를 mongoDB에 저장하고 불러왔다. 아직까진 전체적으로 맛보는 수준인 것 같다._


Schedule2. Codeit(컴퓨터 과학 전공 과정)

코드잇 코딩 공부 과정

[Python] 객체 지향 프로그래밍의 4개의 기둥

Chapter4. 다형성

16. 파이썬 EAFP 코딩 스타일과 다형성

  • LBYL(Look Before You Leap) : 어떤 작업 전에 확인이나 검사를 먼저 거치는 코딩 스타일, 돌다리도 두드려보고 건너라
  • EAFP(Easier to Ask for Forgiveness than Permission) : 일단 실행하고 나중에 문제가 생기면 해결하는 코딩 스타일, 허락보다 용서를 구하는 것이 쉽다
try:
	total_area += shape.area()
except (AttributeError, TypeError):
	print("그림판에 area 메소드가 없거나 잘못 정의되어 있는 인스턴스 {}가 있습니다.".format(shape))
  • 위의 예시처럼 try~except구문으로 에러가 발생할 수도 있는 구문을 처리해줄 수 있다(EAFP스타일) << 파이썬스러운 스타일

감상
객체 지향 프로그래밍의 4가지 중요한 점을 배울 수 있었다. 아직까지는 모호하지만 완강 후 한번 더 전체적인 복습을 통해 전체적인 흐름을 기억해야겠다


Schedule3. BAEKJOON

파이썬 문제 풀어보기

단계별로 풀어보기(추가된 문제 도전중)


10811번. 바구니 뒤집기

개요: M번만큼 i~j까지 바구니를 뒤집어 출력하는 문제

접근방법: 배열을 뒤집는 방법을 생각해야 한다

정답

import sys

N, M = map(int, sys.stdin.readline().split())
array = [n for n in range(1, N + 1)]
for _ in range(M):
    i, j = map(int, sys.stdin.readline().split())
    cache = array[i-1:j]
    array[i-1:j] = list(reversed(array[i-1:j]))
    
print(*array, sep=' ')
  • 배열은 0, 1, 2...인덱스로 진행되고 안에 들어있는 값은 1, 2, 3...으로 진행되므로 생각을 잘했어야 했다
  • 배열의 순서를 뒤집는 방법을 reversed()함수를 사용했다. reversed()함수는 iterator객체를 리턴하므로 list()로 감싸서 리스트를 리턴해주어야 한다.

profile
developer

0개의 댓글