반응형

파이썬 31

[파이썬 기초] 유사 딕셔너리 defaultdict() 활용법

defaultdict()는 딕셔너리를 만드는 dict클래스의 서브클래스이다. 작동하는 방식은 거의 동일한데, defaultdict()는 인자로 주어진 객체(default-factory)의 기본값을 딕셔너리값의 초깃값으로 지정할 수 있다. 숫자, 리스트, 셋등으로 초기화 할 수 있기때문에 여러 용도로 사용할 수 있다. 기본적인 작동방식을 살펴보면 >>> from collections import defaultdict # 외부함수이기 때문에 import 해야한다. >>> int_dict = defaultdict(int) >>> int_dict defaultdict(, {}) # 디폴트값이 int인 딕셔너리 위와 같이 설정을 하면 값을 지정하지 않은 키는 그 값이 0으로 지정된다. >>> int_dict['k..

IT 2023.02.08

[python] 웹 스크래핑 코드 ( 아주 짧은거 )

파이썬을 알고나서 좋은점은 간단한 프로그램들을 쉽게 만들어볼 수 있다는겁니다. 웹에 강의노트를 좀 받아야 할 일이 생겼는데, 페이지를 클릭해보니, 줄바꿈도 없이 화면가득 텍스트만 나옵니다. 멘붕이죠. 불연듯 웹스크래핑을 해서 줄바꿈기호만 넣어줘도 낫겠다는 생각이 들더군요. 그래서 위와 같이 소스코드를 작성해 봤습니다. 민망한 코드긴 하지만 30분만에 작성한것 치고는 그래도 생각한것만큼 돌아가네요. 점점 나아지리라고 믿습니다.

카테고리 없음 2020.01.28

[python] Visual Studio code 파이썬 인터프리터 변경

요약 1. Ctrl + Shift + P 키 클릭 2. "Select interpreter" 타이핑 후 엔터 3. 인터프리터 리스트 중 사용할 인터프리터를 클릭 상세 파이썬 편집기를 VS code를 사용하고 있습니다. 웹 크롤러를 requests 라이브러리를 이용해서 구현하려고 하는데, pip을 이용해서 라이브러리를 추가해도 계속 라이브러리가 없다고 오류가 뜨더라구요. 한참을 헤매다가 VS code에서 파이썬 인터프리터를 여러개 사용할 수 있다는걸 보고 제껄 조회해 보니 3.7버전과 3.8버전이 깔려있더라구요. 3.8이 기본으로 돼 있었는데, pip으로 설치한 라이브러리가 3.7에 추가가 됐었나봅니다. 이부분은 좀 더 알아봐야 되는 부분이네요. 3.8을 선택하면 위와 같이 에러가 뜹니다. 3.7을 선택하..

카테고리 없음 2020.01.28

[파이썬 기초] 함수

함수는 코드 재사용을 위해 주로 쓰인다. 여러번 반복해서 처리하는 작업들을 하나의 함수로 만들어놓고, 그 작업이 필요할때마다 함수를 호출해서 처리하는 식이다. 파이썬 지원하는 함수를 살펴보자. len() 함수는 파이썬에서 시퀀스(문자열, 리스트.. 등)의 갯수를 알려주는 함수다. 사용법은 다음과 같다. 이런 함수 없이 매번 인자의 갯수를 세야 한다면, 많은 코드들이 필요할 것이다. 파이썬에서 함수를 만드는것은 아주 쉽다. 파이썬에서 함수를 제대로 쓰는것은 아주 어렵다. 오늘은 파이썬에서 아주 중요한 요소인 함수에 대해 알아보자. * 함수정의 def 함수명(매개변수): 표현식 return return값 구분 필수/선택 설명 def 필수 함수생성 명령어 함수명 필수 함수가 어떤일을 하는지 표현할 수 있는 이..

IT 2019.04.11

[파이썬 기초] 셋 컴프리헨션

파이썬 자료구조인 셋을 컴프리헨션을 이용해 생성해보자. 사용법은 다음과 같다. { 표현식 for 표현식 in 순회가능객체 } 얼핏보면 아래 딕셔너리 컴프리헨션과 형식이 비슷하다. { 표현식 : 표현식 for 표현식 in 순회가능객체 } 표현식 중간에 콜론(:)이 있는것을 제외하고는 양식이 비슷하다. 헷갈리지 말자. 예제1) 1 부터 9까지 홀수의 셋 1. range(10)을 통해 1~9까지의 수를 n에 할당 2. if 문으로 n%2 == 1 인 값만을 추출 3. 추출된 값으로 셋 생성 예제2) 셋 생성 시 같은 값을 여러번 부여하면 어떻게 될까? 리스트로 [1,2,2,3,3,3,4,4,4,4] 와 같이 값을 부여한다면... 실행해보자 당연히 리스트는 중복값을 허용하지 않기 때문에 {1,2,3,4} 라는 ..

IT 2019.04.10

[파이썬 기초] 딕셔너리 컴프리헨션

앞서 리스트 컴프리헨션을 이용하여 여러가지 리스트 자료구조를 만들어보았다. 딕셔너리도 컴프리헨션으로 간단하게 생성 할 수 있다. 수식은 다음과 같다. {키 : 값 for 표현식 in 순회가능객체(list, set, range() 등) } if문을 이용하여 값을 걸러내고 싶다면 다음과 같이 사용한다. {키 : 값 for 표현식 in 순회가능객체(list, set, range() 등) if (앞의 표현식을 이용한 조건) } 수식이 너무 어려워 보이니 예제를 살펴보자. 예) 먼저 키가 정수이고, 값이 정수의 제곱인 딕셔너리를 만들어보자. 편의상 0~4까지만 해보자. 결과값은 아래와 같이 출력될 것이다. 결과 딕셔너리 = {0:0, 1:1, 2:4, 3:9, 4:16} 1) for문 이용 2) 딕셔너리 컴프리헨..

IT 2019.04.09

[파이썬 기초] 리스트 컴프리헨션(comprehension)

파이썬에서 컴프리헨션은 간단명료하게 자료구조를 만드는 방법입니다. 일반적으로 리스트를 만드는 방법을 살펴보겠습니다. 0부터 10까지 수 중에 홀수만으로 리스트를 작성해 보죠. 최종 리스트는 [1, 3, 5, 7, 9] 가 될 것입니다. 1. 수작업 제일 간단하게 리스트를 만드는 방법은 리스트에 일일이 값을 추가시켜주는 방법일 것입니다. 리스트의 append() 메서드를 이용하면 되죠. 이렇게 다섯줄 만으로(?) 리스트를 생성했습니다. 그런데, 리스트의 크기가 백개, 만개, 백만개로 커진다면, 답이 없는 방법이겠죠. 2. for문과 range()를 이용한 방법 조금만 코드를 줄여보겠습니다. 코드가 확실히 줄어들었습니다. range()를 이용해서 0~9까지 반복하면서 num 나누기 2를 했을 때 나머지가 1..

IT 2019.04.04

[파이썬 기초] range() 함수로 여러가지 숫자 리스트 만들기

파이썬에서 숫자리스트를 만들때 range() 함수를 이용하면 쉽게 만들 수 있습니다. range()함수의 사용법은 다음과 같습니다. range(start, stop, step) 슬라이스와 비슷하게 동작합니다. start는 시작값, stop은 종료값, step은 증가 값이 됩니다. 슬라이스처럼 stop값은 제외됩니다. stop-1 값까지 만들어지죠. 예제를 보도록 하겠습니다. 어떻게 출력되는지 나타내기 위해서 리스트 생성함수 list() 를 사용해서 리스트를 만들었습니다. 1. range() 에 인자를 하나만 준 경우 위와 같이 range(3) 처럼 하나의 값만을 인자로 주면, start 값은 0, step은 1 로 자동설정 됩니다. 주어진 값은 stop 값으로 쓰이는거죠. 그래서 결과값이 [0, 1, 2..

IT 2019.04.03

[파이썬 기초] 여러 시퀀스를 같이 반복(순회)하기 - zip()

for 문을 이용하면 리스트와 같은 시퀀스를 순회할 수 있다고 했었다. 그러면 어러개의 리스트를 같이 순회할 수는 있을까? 당연히 있다. zip() 함수를 사용하면 여러 시퀀스를 한꺼번에 순회하면서 처리할 수 있다. 아래 프로그램을 살펴보자. last_name에는 성이 3개 있고, first_name에는 이름이 3개가 있다. 이것을 zip()으로 묶어 for문에 넣어주면 아래와 같이 각각 쌍으로 출력이 된다. last_name[0] + first_name[0] last_name[1] + first_name[1] last_name[2] + first_name[2] 아주 간단하게 여러 시퀀스를 반복해서 사용할 수 있다. 그러면 프로그램에서 리스트의 갯수가 다를 경우에는 어떻게 될까? 아래 프로그램을 살펴보면..

IT 2019.04.02

[파이썬 기초] python 명령 실행 시 버전 3이 실행되게 만드는 방법

파이썬 2버전이 기본적으로 깔려있는 컴퓨터에서 파이썬3버전을 설치했습니다. 터미널에서 "python" 이라고 프로그램을 실행시키면 2버전이 기본적으로 실행됩니다. 파이썬 3버전을 실행시키려면 "python3" 이라고 실행을 해야하죠. 전 3버전을 쓰고 싶어서 무식하게 계속 "python3"로 실행시키고 있었습니다. 근데 3버전을 기본으로 실행시키는게 너무 간단하더라구요. .bash_profile 파일을 열어서 alias만 설정해주면 됩니다. 한번 해볼까요? 1. vim으로 .bash_profile 파일을 엽니다. vim .bash_profile 2. .bash_profile에 alias 설정을 합니다. alias python="python3" 3. 설정을 저장하고 나와서 다시 파이썬을 실행해 봅니다. 아..

IT 2019.02.23
반응형