코테에서 자주 쓰는 파이썬 문법 - 자료형,리스트 합치기
·
study/python
이 글은 본인의 입장에서 알고 있는 것들은 배제하고 잊고 있던 파이썬 특성을 기억을 되새기기 위한 지극히 주관적인 기록입니다. 파이썬에 대한 이해도가 거의 없는 분이 보시기에는 상당히 불친절한 글이라는 점 알려드립니다ㅜㅜ 자료형 리스트 크기 지정 리스트 초기화 a = [0]*n # [0,0,0,0,0,0,0,0,0,0] 리스트 컴프리헨션 arr = [i for i in range(10)] # [0,1,2,3,4,5,6,7,8,9] arr = [i for i in range(10) if i%2==1 ] # [1,3,5,7,9] # NxM 크기의 2차원 리스트 초기화 n=4 m=3 arr = [[0]*m for _ in range(n)] # [[0 리스트 관련 메서드 append : O(1) sort : O..
코테를 위한 파이썬 문법 공부 - range, eval
·
study/python
range 함수 # range 함수를 이용한 리스트 생성 # 5부터 9까지 생성 a = list(range(5,10)) # 0부터 10까지 3씩 건너뛰며 생성 b = list(range(0,10,3)) # -10부터 -100까지 -30씩 건너뛰며 생성 c = list(range(-10,-100,-30)) print(a) print(b) print(c) 시퀀스의 인덱스들로 이터레이트 a = ['a','b','c','d'] for i in range(len(a)): print(i,a[i]) 하지만 이 경우, enumerate 함수를 쓰는것이 편합니다. enumerate_a = list(enumerate(a)) print(enumerate_a) 많은 경우 range()가 리턴하는 객체는 리스트 처럼 동작하지만..
Pandas 예제
·
study/python
# 데이터프레임에서 다른 데이터프레임과 병합 df4 = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'], 'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'], 'C': np.random.randn(8)}) pd.merge(df, df4, on='A') # 인덱스 확인 df.index # 컬럼 확인 df.columns # 데이터프레임에서 값만 확인 df.values # 데이터프레임에서 describe() 함수 사용 df.describe() # 데이터 정렬 df.sort_values(by='B', ascending=False) # 컬럼 선택 df['A'] ..
Sympy
·
study/python
반복자와 생성자
·
study/python
반복자iterator 하나 이상의 항목이 포함되어 있는 자료구조에서 데이터를 순차적으로 꺼내어 이용할 수 있는 객체를 반복자 객체라고 한다. 반복가능 객체를 위한 내장함수 파이썬의 반복가능iterable 객체는 다양한 내장함수들을 적용할 수 있다. min()이나 max()와 같은 함수는 반복가능 객체를 인자로 받아서 최솟값과 최댓값을 반환하는데 이들 외에도 all(), any(), ascii(), bool(), filter(), iter()와 같은 고급 내장함수도 제공되고 있다. all() : 반복 가능한 항목들이 모두 참일 때 참을 반환핟다. any(): 반복 가능한 항목들중 하나라도 참일 때 참을 반환핟다. bool(): 값(리스트)을 부울 값으로 변환한다. 즉 리스트의 항목 유무를 True와 Fal..
람다 함수
·
study/python
람다함수lambda function 1회용의 간단한 함수를 만드는것 람다 표현신lambda expression이라고도 불리우는 이름이 없는 함수 익명함수anonymous function 필터 함수filterfunction # 19세 이상의 값이 들어오면 True, 그렇지 않으면 False를 반환 def adult_func(n): if n >= 19: return True else : return False ages = [34, 39, 20, 18, 13, 54] print('성년 리스트 :') # filter()함수를 사용한 ages의 필터링 for a in filter(adult_func, ages): print(a, end = ' ') 성년 리스트 : 34 39 20 54 # 람다 함수를 이용한 음수..
예외 처리
·
study/python
try - except 문의 문법 예외처리exception hadling를 위해 사용 try 절 - 예외가 발생할 우려가 있는 코드를 입력 except 절 - 오류가 발생했을 때 처리할 내용을 담음 예외가 발생하지 않으면 except를 건너뛰고 예외가 발생하면 오류를 확인하여 except의 매칭되는 부분으로 넘겨준다. try: {예외가 발생할 우려가 있는 코드} except [예외의 타입]: {예외가 발생할 경우 실행되는 코드} 어떤 예외 상황에 의해서 except가 실행 되었는지 알고 싶은 경우 구체적인 예외를 명시하기 try - except - else 문 예외가 발생하지 않을 경우 else문을 사용하여 그 결과값을 출력해 보기 예외가 발생하지 않은 경우에 실행되므로 반드시 except절 바로 다음에..
표준 라이브러리사용
·
study/python
표준 라이브러리는 파이썬에 달려 있는 패키지의 집합체이다. 표준 라이브러리를 사용하는 방법은, 간단하게 import문을 써서 필요한 모듈 또는 라이브러리를 import하면 된다. 예를 들어 웹 서버로 데이터를 취득하여 이라는 모듈에 포함되는 request 모듈을 import하는 경우에는 다음과 같이 하면 된다. 다음의 예는, urllib의 기능을 사용하여 python.org의 최상위 페이지의 HTML에 src라고 하는 변수에 대입하고 있는 예이다. from urllib import request src = request.urlopen('https://python.org/').read() 날짜와 시간 데이터 취급 (datetime, calendar) 은 날짜와 시간을 데이터로 표현하고 싶을 때에 사용하는 ..
모듈
·
study/python
파이썬에서는 스크립트 파일과 모듈은 거의 동급이다. '.py' 라는 확장자를 붙인 파일의 최상위 블록에 클래스를 정의하면 모듈 속에 클래스를 정의할 수 있다. import문이나 from문을 사용하면 모듈에 정의되어 있는 클래스를 import 할 수 있다. 예를 들어 'bookmark.py'라는 파일에 Bookmark 클래스를 정의했다고 하면, 즉 bookmark 모듈에 Bookmark 클래스를 정의하는 것이다. 외부의 파일로부터는 아래와 같이 클래스를 import해서 이용할 수 있다. # bookmark 모듈을 임포트 함 import bookmark # Bookmark 클래스로부터 인스턴스를 만듦 b = bookmark.Bookmark("타이틀", "http://path.to/site") from문을 사..
클래스 상속과 고급 객체 지향 기능
·
study/python
클래스를 만들 때 기존 클래스에 기능을 추가하거나 기능을 변경해서 새로운 클래스를 만들 수 있다. 이와 같이 클래스를 만드는 것을 상속이라 한다. 클래스의 상속이란 어떤 클래스를 본(틀)으로 해서 다른 클래스를 만드는 것이다. 본(틀)이 되는 클래스를 슈퍼 클래스라 부르며, 슈퍼클래스를 바탕으로 만들어진 클래스를 서브클래스라 부른다. 상속이라는 기능을 사용하면 이미 존재하는 설계도를 바탕으로 일부 기능만을 바꾸거나 기능을 강화한 별도의 설계도(클래스)를 만들 수 있다. 클래스를 상속할 때 기본적인 기능은 원래 설계도 (슈퍼클래스)에 정의되어 있는 것을 그대로 사용하는 것이 유용하다. 서브클래스에서는 필요한 부분만 바꾸거나 새로 추가하는 기능만 설계도에 추가해 넣게 된다. 파이썬은 클래스의 다중상속에 대응..