본문 바로가기
코알라UNIV

2주차 데이터수집을 위한 기초 파이썬

by 인듯아닌듯 2019. 10. 9.

2019/10/9 한글날에도 학교 도서관은 꽉 차있다. 오늘 15년만에 최저 온도를 다시 갱신했다고 했는데, 도서관은 공부에 대한 열기로 뜨겁다. 마찬가지로, 휴학중인 나와는 달리 우리팀원들은 학교 공부와 알바 혹은 전공관련 프로젝트 또 각자의 취미생활에 더해서 코알라유니브 활동까지 하고있다. 뛰는시간속에 날고 있는 우리 팀원들을 보면서 나도 꾸준히 걸어야겠다는 생각을 한다.

빈칸

빈칸

빈칸


2주차 정리

요번 주는 내가 배운 내용을 정리하는 순서여서 우리 팀원들에게 전달하려고한 Script를 그대로 복붙함


 

1주차에서는 HTML의 구성과 / HTML에서 컨테이너와 선택자를 설정하는 방법을 배움

3주차에서 데이터를 수집하는 코딩을 파이썬 하기때문에, 2주차에서는 파이썬에 대해 알아보려고 함.

 

먼저 파이썬은 프로그래밍 언어 중 하나이고, 쓰는 이유는 무료,가독성,많이 쓰이고, 비교적 쉬운 프로그래밍언어
특히 문자열의 전처리과정이 쉽기 때문에 우리가 사용하려고 하고있음
파이썬을 제대로 사용하려면 파이참이라는 개발도구를 깔아야 한다. 코딩을 쉽게 할 수 있게 도와주는 개발도구 메모장으로 몇가지 코딩해보면 그 유용성을 알 수 있다. 개발도구가 없으면 코딩을 하기 너무 어려워진다.

 

Stage에 따라 정리

stage1 : project 생성

1) New project interpreter vs 2) Existing interpreter

1) “가상환경을 만들어서 컴퓨터마다 생기는 환경차이를 통일시켜줌
이 문장의 의미 = 프로젝트 안에 lib를 포함시켜줌.
lib
라는 건 다른사람이 이미 개발 해놓은 단위 프로그램. 우리는 그 단위프로그램을 부품처럼 쓰면 되는 것
협업하는 과정에서, 본인이 사용했던 부품을 같이 보내주는 것으로 생각하면 좋을 꺼 같음

2) 내 컴퓨터에 설치된 라이브러리만을 사용.

stage 2 : 입출력

-python의 사칙연산: 더하기,빼기,곱하기,나누기 / ,나머지

print()에서는 괄호 안이 하나의 형식으로 통일 되야한다. =>

-> 두가지방법: print ( , ) – 독립시키는 방법 : or  데이터타입변화

 

-변수에 값을 지정하는 것은 그릇과 내용물로 설명하면 좋은 것 같다.

변수의 값 지정하는 것은 마치 그릇에 데이터를 담는 것 과 같다.
그래서 자주 보았던 변수에 새로운 값 지정하는 것도 그릇에 새로운 내용물을 담는 것과 같다.
파이썬의 특징은 그릇에 담는 내용물에 따라 그릇의 타입이 결정된다는 것이 있어서 동적타입이라고 한다.

 

-Input은 입력을 받는 방법 중 하나

input의주의할점: 입력을 string으로 받음
(
제가 찾은 두번째는 sys.argv[1] 실행과 동시에 값을 입력 받아야함 ex) 로그인 할 때)

stage3: list와 문자열

먼저 list라는 건, 많은 데이터를 한번에 담는 구조 중 하나. 다른 하나는 배열이 있는데요.

음식점 예약자 명단은 리스트 <-> 영화관 자리처럼 공석이라도 데이터공간을 자치하고 있는 구조를 배열이라고 함.

list 에대해 배운 4가지 추출,삭제,추가,갯수(내맘대로 이름 붙임)
추출 : indexing and slicing, 삭제:del player[] , 추가 .append() , 갯수 len()

 

변수에 문자가 데이터로 담기는 것도 list 방식 0~ [] 따라서
파이썬에서 할 수 있는 데이터전처리 기능 3가지
1. replace(A,B) / 2. strip() 

3. list 이기 때문에 가능 : indexing and slicing (del append는 안됨)

stage4 : 반복문 for : 수고로움을 덜기위해

형태는 for 매개변수 in range / for 매개변수 in [list]   range list의 공통점 : 시작이 0 , 범위설정시 a<= <b

for 매개변수 in range  range(5) range(3,5) range(1,11,2)  + 배열 전체을 원할 때 range(len(배열))

 

또 배열전체를 원할 때는, for 매개변수 in list : 매개변수에 i 에 잠깐 list0번째 값을 담아서 쓰고 버리고. 다음 반복에서는 1번째 값을 담아서 쓰고버리고,   

개인적으로 헷갈림 i는 배열을 받는 것이 아니라 차례대로 순서를 잠깐 받아서 사용한 뒤 다음 값을 받는 중간자 같은 역할

 

마지막으로는 python 무엇인지 전반적으로 알기위해서.
다른 프로그래밍 언어랑 비교하면 좋겠다고 생각 : java python 아는 수준에서 가볍게 비교

 

1. 해석방식

2.변수의 자료형 선언방식

문법적인 측면(사용하면서 불편을 겪음)

파이썬

interpreter언어

동적타입(예기치못한 오류)

띄어쓰기,Tab ->잘해야되

자바

compile언어

정적타입(귀찮으나 확실)

{}

+추가

List에서 append 와 del 은 자바에서 void 처럼 아예 행위가 이뤄지는 느낌, d=d.replace(",","")는 return값을 이용해서 다시 담는 느낌...


challenge와 homework에 대해서 서로 질문했고, 백준(https://www.acmicpc.net)사이트를 알게되서 알고리즘 문제를 풀었다.
특히 https://www.acmicpc.net/problem/2443 같은 별 찍기 결과가 다양하게 나왔지만, 실제 아이디어는 비슷했다. 하지만 다들 익숙하지않아서, Run했을 때 문법의 오류가 있었을 뿐.

코딩 실습

+다시 돌아와서 코드를 보니, 모양만 비슷했을 뿐 미묘하게 틀린 부분이 많더라. 나는 완전히 틀리게 풀었다..

알고리즘 짤 때는 내 해석이 아닌 확실하게 어떤 값을 원하는지 알아야한다.

그러기 위해서는 모양 뿐아니라, 예시를 보는 것이 중요하다. 예시는 문제푸는데에 있어서 가장 큰 힌트가 되기 때문에!

 

스터디할 때 서로 모르는 부분을 공유하고 물어보는데에 있어서, 7명이나되다보니 보기힘들다는 생각에 미리 봐두는게 좋을 것 같다고 생각되어, 각자 실습한 코딩을 단톡방에 올리는 것으로 약속하였다. 더 효율적인 모임이 될 것 같다.

'코알라UNIV' 카테고리의 다른 글

5주차 똑똑하게 데이터 수집하기  (0) 2019.11.06
4주차 데이터를 저장하는 방법  (0) 2019.11.01
3주차 파이썬으로 데이터 수집하기  (0) 2019.10.17
1주차 웹페이지를 이해해보자  (0) 2019.10.03
Prologue  (0) 2019.09.23