본문 바로가기

분류 전체보기

(13)
BeautifulSoup로 잡스코리아 크롤링. 요즘에는 nico쌤의 파이썬 수업을 듣고 있다. 수업에서 indeed 사이트를 크롤링하였는데 그동안 업데이트되서 그런지 사이트의 한 번에 50개의 직업정보보기 같은 검색기능이 사라져서 한 페이지에 10개만 표시되었다. 그래서 그냥 잡스코리아에서 직업을 개발자로 검색하고 그중 첫 10페이지의 직업정보를 추출해보기로 했다. !/usr/bin/env python3 from bs4 import BeautifulSoup import requests print('content-type: text/html; charset=utf-8\n') 먼저 python3의 경로를 표시하고 BeautifulSoup와 requests 모듈을 import 했다. url = 'https://www.jobkorea.co.kr/Search..
[파이썬]함수에 인자가 없어도 작동할까? 오늘 재밋는 사실을 발견했다. >>>def c(): print(1) >>>c() >>> 1 파이썬에서는 함사에 인자를 설정하지 않아도 함수가 작동한다는 사실이다. 궁금해서 검색해봤다. https://stackoverflow.com/questions/2241200/is-it-possible-to-declare-a-function-without-arguments-but-then-pass-some-argume
메소드(Method) 와 함수(Function)의 차이. 이 둘의 차이는 간단하게 말하자면 다음과 같다. 함수(Function): 독립적으로 존재한다. 메소드(Method): 객채(Object)에 속해있다. 즉 객체에 종속되어 있는 함수라고 할 수 있다. 그래서 큰의미로 보면 매소드는 함수에 속한다. 둘다 실행하는 기능의 단위는 동일하다. 그냥 이렇게만 아니 뭔가 찝찝하다. 그래서 더 알아보기로 했다. sum(), print() -> 함수 object.append()-> 메소드 이렇게 이해를 했다. 유튜브 초보코딩님의 이 영상을 한 번 보기를 추천한다. https://www.youtube.com/watch?v=D19ZrVVA7aE
String은 배열인가? 오늘 파이썬 코드를 짜다가 의문이 생겼다. word = 'word' print(word[1]) # 'r' 'word'는 스트링인데 배열이라고? 그래서 혹시 문자도 배열의 한 종류인가?라고 생각하였다. 그리고 검색해보았다. 그리고 이런 답을 얻었다. 문자열은 배열이 아니지만 '열'이기 때문에 [1] [2]이런 접근이 가능하다는 것이였다. 이러한 방식을 문자열 인덱싱 이라고 한다. 예시를 들면 word = 'Cashmere perfume.' print(word[2]) #'s' print(word[1:4]) #'ashm' print(word[:5]) #'Casgme' print(word[0:-1]) #'Cashmere perfum'
python for 문, range()에 대하여. for 문에서 변수는 작업되는 배열의 item을 가리킨다. string, list, tuple 같은 배열의 요소를 '순차적으로' 가리킨다. (string은 배열은 아니고 '열'이기 때문에 ['s','t','r','i','n','g']같으로 될 수 있다.) 간단한 응용의 예시를 들어보겠다. list = ['1','2','3','4'] for k in list: print(k) # 1 2 3 4 먼저 ['1','2','3','4']의 첫 번째 요소인 '1'이 k 변수에 대입된 후 print(k)를 수행한다. 그다음 두 벉째 요소인 '2'가 k 변수에 대입된 후 print(k)를 수행한다. 아렇게 list 의 마지막 요소까지 이과정을 반복한다. for문으로 학생들의 성적의 합격여부를 확인하는 응용. #resu..
charset(character set), utf-8 에 대하여. 생활코딩 이고잉님의 html수업을 처음 들으면서 궁금했던게 항상 html의 영역에 이라는 태그를 넣는다. UTF-8은 전세계 문자와 기호를 원활하게 인코딩하는 방식이다. 인코딩(encoding)이란? 컴퓨터는 모든 정보를 0과 1인 바이너리, 즉 숫자로 저장한다. 그런데 우리는 매일 여러가지 언어로 코딩작업을 하고 문서를 만들고 저장하고 있다. 우리가 입력하는 문자와 기호들은 컴퓨터가 이해하지 못한다. 여기서 우리가 입력한 문자와 기호들을 컴퓨터가 이해할 수 있는 신호로 변환하는 과정을 인코딩이라고 한다. 반대로 0과 1로 구성된 바이너리 데이터를 다시 문자로 복구하는 과정을 디코딩이라고 한다. 문자셋(character set)이란? 문자 셋은 쉽게 말해 인코딩과 디코딩을 위해 미리 정해진 규칙을 말한다..
<Python> Module(모듈)이란. 모듈이란? 파이썬에서 하나의 .py파일은 모두 하나의 모듈이다. 모듈 안에는 함수, 클래스, 혹은 변수들이 정의될 수 있고, 실행 코드도 포함될 수 있다. 이러한 모듈들이 여러개 모여있는 것을 패키지 package(패키지)라고 부른다. 여러개의 파이썬 파일이 폴더에 따라 나뉘어져 있는 하나의 큰 폴더라고 생각하면 쉽게 이해될 것이다. 파이썬은 상당히 많은 인기를 누리고있는 이유도 패키지와 모듈 덕분이다. 우리는 다른 사람들이 만든 코드를 쉽게 사용할 수 있고 배포 또한 쉽게 할 수 있기 때문에 아주 편리하다. 사용방법. 모듈들을 사용하려면 모듈을 import하면 된다. 예를 들어 표준 라이브러리 중 수학과 관련된 함수들을 모아 놓은 "math" 모듈을 import 하여 그 모듈안에 있는 pow()함수를 ..
Python f-string 와 str.format()에 대하여. 먼저 문자열 포매팅(formatting)이란, 한 마디로 말하자면 문자열 포매팅은 문자열에 어떤 값을 삽입하는 방법이다. 그리고 f-string 와 str.format()는 문자열 포매팅의 두가지 방식이다. 먼저 str.format()을 보자. def some_drink(a,b): print(('I want some {} and {}.').format(a, b)) some_drink('milk','coffee') # I want some mile and coffee. 그리고 f-string을 보자. 참고로 python 3.6 버전 이후부터 사용할 수 있다. def some_drink(a,b): print(f'I want {a} and {b}.') some_drink('milk','coffee') # I ..