본문 바로가기

일별 학습일지

12/13 :: 실시간

(온라인과 중복되는 부분 많음)

 

01.

개발 협업이 어려운 이유

로직트리

LLM = GPT

> 통역가를

코드의 오류 = 불안전성

 

02.

업무 자동화 : 엑셀(openpyxl, API) , 파워포인트(경영 직군)

전자정보, 조달청, 나라장터

서비스 구현

데이터 분석

파이썬으로 웹 and 앱 개발 가능

여러 복잡한 수식도 이미 구현됨 > 작동방식 이해 및 활용

 

 

자료형

강사분 코랩링크

https://colab.research.google.com/drive/1y_zZm-78wcWWQMipcEFBgS2YpRjnSBUs?usp=sharing

개인공부용 코랩링크

https://colab.research.google.com/drive/1usTkQZt7KoaA-9hV2qxAMMI4QlO4XmA7?hl=ko#scrollTo=B5R7i2V3Bm9H

 

오전은 colab

오후에 vsc, anaconda 활용 > 점심시간에 pycharm 환경 조성하기

 

x ** y x의 y승

x // y 몫

x % y 나머지

 

유용한 단축키 alt shit 방향키 ↑ ↓

 

' ' 안에 "" 가능

\' 백슬래쉬 활용

 

 

Formatting 문자 출력법

 

Index 예시

파이썬의 숫자는 0부터 시작이다

 

 

 

슬라이싱 예시

word[0:4]
word[:4]

 

 

리스트형 (List)

 

[ ] - 여러개 데이터 한곳 보관

리스트중첩 → 벡터, 행렬의 원형

 

 

divide and conquer

하나의 큰 프로그램을 만들 때 작은 부분에서부터 조금씩 빌드업

 

.append()

.sort()

 

return이 없는 값.

 

 

튜플(Tuple)

x = (1,2,3)
new_x = x + (4, )
new_x

//(1,2,3,4)

 

 

딕셔너리(Dict)

{,} 중괄호

key : value 형태 → json

 

집합형 Set

 

불형 Boolean

 

조건문

or의 활용

input 함수 = 실행창에서 값 입력할 수 있게 해줌

 

반복문for

 

변수를 i 로 굳이 하지 않아도 됨

 

 # in 뒤에 들어갈 수 있는것?

range, list, tuple 등 다양하게 가능

 

참고. 파이썬 코딩 컨벤션? 

https://spoqa.github.io/2012/08/03/about-python-coding-convention.html

 

회사마다 작성하는 룰이 다다름. 기술 문서

이러한 특징 : 코딩 컨벤션 

 

참고. github으로 협업하는데, 동료가 confirm 해야 반영됨

 

주석은 항상 코드 바뀔때마다 모순되지 않게 최신화  

 

반복문 while

조건문에서 handling 할 수 있는 조건을 넣어줘야 loop 발생 x

횟수 관계없이 조건 만족했으면 좋겠다싶을 때 

 

a = a+1  / 직관적

a += 1

 

Hands on : 1부터 5까지 더하는 프로그램 만들기

 

 

합 Sum 

While은 i 증감을 표현해야함 vs for 는 필요없음

 

Continue vs Break

skip vs stop

 

구구단 & 조건별 구구단

실습

조건문을 코드를 최대한 덜고치는 방향으로 생각

 

f-str 사용시

 

 

for를 쓰는 방식

 

여담. 

회사 5개를 다니는 것.

 

정규직 / 비정규직 큰 상관이 없음(시간당 페이가 더 높음)

프로젝트 베이스 기반

 

ex)

쇼핑몰 분석 > 메일보내서 데이터 분석 컨설팅 무료로 해주겠다. 

1곳만 뚫어도 데이터 얻을 수 있음

 

(하신 분들은 논문 많이보고 적용할 수 있어서 좋긴하다는 의견) 

 

 

함수 def

함수를 작동하는 함수는 return 유무에 의해 결과값이 달라짐

cf. VSC 는 함수 ctrl 클릭하면 함수를 찾아가볼 수 있음 > 공부하는데 도움됨

 

# 설계
def score_result(score, name): 
	if score >= 90:
    	grade = 'A'
    elif score >= 80:
    	grade = 'B'
    elif score >= 70:
    	grade = 'C'
    elif score >= 60:
    	grade = 'D'
    else:
    	grade = 'F'
    
    print(f"{name}은 {grade} 등급입니다.")
    
    return grade
    
# 함수 사용
score_result(100, 'inseop')
    
    
    
# 엑셀기재 등
for name, score in excel:
	score_result(score)

 

 

Built in Python 

내장함수

 

.upper()  

.lower()

 

.join()  & .split()

각각 추가하거나 나누는 함수

date = "2023-12-13 15:32:00"

year = date.split(" ")[0].split('-')[0]
month = date.split(" ")[0].split('-')[1]
day = date.split(" ")[0].split('-')[2]

#join

 

random 함수 

 

time.

daytime 이라고 범용적인 함수도 있긴함

 

클래스 Class

class FishBread():
	#생성자 → 함수가 실행될 때 가장 먼저 실행되는 메소드
    def __init__(self, name, ingredient, price):
    	self.name = name
        self.ingredient = ingredient
        self.price = price 
        
    def breaf(self)
    	print(f"이 붕어빵은 {self.name}이고, 재료는 {self.ingredient}, 가격은 {self.price} 입니다.")
        
    
    redbean_bread = FishBread("팥붕어빵", "팥", 500)
    
    redbean_bread.bread()
    
    // 이 붕어빵은 팥붕어빵이고 재료는 팥, 가격은 500 입니다.

 

 

Q. ()안에 self가 항상 들가는 이유가 있을까요? 예) bread(self)

 

서로다른 함수들이 인스턴스에 접근하여 변수를 사용하기 위해서 self를 사용한다. 

다른 함수들에서도 활용할 수 있게 선언한다 생각하면 됨

 

추가적으로 vsc 하면서 다 보여줄 예정

 

Q. 인스턴스(Instance)와 객체(Object)

 

자동차 클래스 → 속성(이름, 색상, 가격) /

인스턴스 → '나만의' 자동차  

 

클래스 전체는 객체,  객체의 속성 값을 가지는 것을 인스턴스

즉 개별로 생성되어 객체의 속성값을 가지는 된 것을 인스턴스로 볼 수 있다.

 

너무 매몰될 필요는 없고 인지만 해두면 된다

https://cerulean85.tistory.com/149

 

 

Q. class ==object?

 

 

엄연히 따지면 class != object

클래스는 구조 전체를 객체라고는 하지만.. 음

 

일단 객체지향시스템을 배우면서 좀더 상세하게 배울듯 함.

 

 

실습예제

 

보완점

설계에 필요한 함수를 여러개 알아두면 더 좋을듯함

함수도 좋지만 알고리즘을 생각하는 것이 중요

 

f-str 입력문법 숙지필요. 직관적이라 쓸일이 많다. 

 

 

 


동기가 매우 중요함

 

분기별 모임을 가졌다. 

- 코드 리뷰 어떻게 하는지, 개발자 출장 관련, 연봉 얼마, 백엔드 결제 서버 어떤거 씀? 

- 동료가 억대 연봉, 배달/라인/네이버.. 각자가 속해있는 영역에서 이야기함. 

- 회사자랑, 복지 포인트 등

 

대기업은 아니더라도 문화를 공유하고 아키텍쳐를 들은게 도움이 많이됨.

대용량 서버를 구축할 때 도움됨

 

3일 > 수업

3일 > 실습(프로젝트) // 개인적 (오전 flask 강의)


크롤링 기초

 

colab으로 해도 상관은 없지만 재미가 없음

리눅스 베이스다보니 코드 움직이는 결과를 보기 힘듬

 

일부러 로컬에서 크롤링하는 걸 추천

ex) 코랩으로하면 지역이 달라지는데 이거마다 다른 환경이 나옴 

 

모듈로 만들때 한계점이 있음

 

Q. 주피터노트북은 코드 편집기인데 파이참은 뭐고 아나콘다는 뭐라고 생각해야하나요

 

아나콘다 : 파이썬 패키지 묶음 

주피터노트북 : 오픈소스 기반 가벼운 코딩 편집기 

파이참 : 고급화된 편집기

 

가벼운 vsc를 선호하는 편 (3~4개씩 띄우고 있음) 

 

크롬드라이버 주기가 빠르니까 웹드라이버 매니저로 하는게 나음

 

 

메모 : 글씨체 변경하기 (쉬는 시간) https://precommer.tistory.com/50

(공유완료)

 

 

요소들을 보기 위해선 마우스 우클릭, 검사

F12 누르면 요소가 나옴 

 

 

id 값을 찾거나, class 명을 찾거나(css.selector 는 코드가 너무 김) 

 

마우스 우클릭 - 검사  : element 찾기 쉬움

중복이 있을 수 있으나 첫번째이면 상관없음

json 구조를 가져와서 보면서 코딩하면 좋음

 

어려운 기술이 아니기에 배워두면 삶이 쾌적해짐

 

기술을 가진 사람들이랑 경쟁하는 게 힘듬. 필요하는 정보를 수집하는 습관 

 

 

만약, class가 없으면...

 

태그를 활용

 

금요일날 HTML 활용, 

저처럼 실시간 데이터를 받아볼 수 있는 공간을 만들 예정

'일별 학습일지' 카테고리의 다른 글

12/20 :: Ideation  (0) 2023.12.20
12/18 :: 실시간  (0) 2023.12.18
12/12 :: IF, for, while  (0) 2023.12.12
12/11 :: Data type  (0) 2023.12.12
12/12 :: 특강  (0) 2023.12.12