Python

Python

class와 member, method

클래스 데이터(멤버)와 기능(method)를 가지고 있는 인스턴스 객체를 생성하기 위한 역할 클래스는 일종의 설계도면! 파이썬은 객체지향 프로그래밍 언어임 클래스라는 설계도면을 보며 하나의 인스턴스 객체를 만들어 냄. 이런 인스턴스 객체를 선언하여 사용가능 사용방법 첫 글자는 대문자로 self는 스스로를 가리키기에 self는 인스턴스를 가리킴 class Car(object): max_speed=300 mac_people=5 def move(self): print('차가 움직이는 중...') def stop(self): print('차가 멈춤') print(Car.max_speed) #이렇게 쓰지 마세요 #클래스에 바로 접근해서 무엇을 하는 것을 권고하지 않음! k5 = Car() # 차 (인스턴스) = ..

Python

조건문 if/elif/else

if - elif - else if score >= 90 : # 만약에 조건이 참이라면 return "A" # 실행됨 elif score >= 80 : # 첫 번째 조건은 거짓이고 두 번째 조건은 참이라면 return "B" # 실행 elif score >= 70 : return "C" elif score >= 60 : return "D" else: return "F" if, elif, else 구문은 함께 썼다면 한 덩어리가 되어 하나만 실행이 되고 나머지는 X True/False 구분? if '': # [], {}, '' 는 모두 False 취급 print('hello') print('one') print('two') if ' ': # 공백 -> True, ''-> False print('hello'..

Python

셋 Set

{ } 셋. 집합 집합 자료형은 중복을 허용하지 않음 순서가 없다!! pop 하게 되면 랜덤하게 나옴… 같은 숫자들 있는 리스트를 set에 넣으면 중복값 다 제거됨 number_set = set([1, 1, 2, 2, 3, 3, 4]) # {1, 2, 3, 4} method add() menu.add( ’latte’) set에 값을 추가할 때 사용 update() menu.update(['ice coffee', 'ice tea', 'green tea']) 값을 여러 개 추가할 때 사용 remove() 특정 값을 제거하고 싶을 때 사용 지우려고 하는 값이 없으면 에러 발생 menu.remove( ‘ice tea’ ) discard() 마찬가지로 특정 값을 제거하고 싶을 때 사용 지우려고 하는 값 없어도 오..

Python

딕셔너리 dict

{ } 순서 보장함!!!! (업데이트됨, 3.6ver 뒤부터 다름) key : value 하나의 묶음으로 이루어진 자료형 값의 변경 가능 다른 자료형 입력 가능 value에 리스트 같은 걸 넣을 수도 있다! key 값으로 리스트를 사용할 순 없지만, 튜플은 사용가능 key가 고유하기 때문에! 변할 수 있는 리스트는 ㄴㄴ key의 중복 불가능, value의 중복 가능 key와 value를 쌍으로 넣어야만 dictionary가 됨 다른 프로그래밍 언어에서는 Map 등의 다른 용어로 불림 dict 만드는 방법 d={ "one" : "하나", "two": "둘", "seven": "칠"} d["one"]= 1 d = {} type(d) #dict d = {10} type(d) #set -> key와 value를..

Python

튜플 Tuple

튜플 ( ) 순서가 있는 시퀀스형 자료형 순서 있고, slicing 가능 참조값은 변경이 불가능(immutable)하다 값은 변경이 가능!! 주소가 변경 불가 다른 자료형을 입력할 수 있으며, 튜플 안에 튜플로 다차원의 형태 가능 값의 중복 허락( ↔ set ) 불변 안에 가변인 자료형을 넣으면 그 변경이 되는 자료형을 조작 할 수 있다… 따라서 불변인 것 안에는 불변만 넣어서 조작 불가하도록 만들기 튜플의 method 변경이 불가하기 때문에 사용할 수 있는 method 한정적 count() index() t = (1, 2, 3, 4) t = tuple('leehojun') # ('l','e','e','h','o','j','u','n') 하나씩 나눠 t = 1, 2, 3, 4, 5 #(1, 2, 3, 4..

Python

다차원 리스트의 활용

계산 max(배열) : 최댓값 min( a ) sum( A ): 합 리스트의 순회 a = [1, 2, 3, 4, 5, 6, 7, 8] for i in a: print(i) 범위 - range range(start, stop, step) 슬라이싱과 같은 규칙. 슬라이싱은 :로 연결, range는 ,로 연결 print(range(100) python 2.x에서 python 3.x의 range를 사용하고 싶다면 xrange( ) 사용 print(list(range(0, 101, 2))) #짝수 print(list(range(1, 101, 2))) #홀수 print(list(range(100, 1, -2))) print(sum(list(range(0, 101)))) print(sum(range(0, 101)))..

Python

정렬과 얕은 복사, 깊은 복사

정렬 filter 어떤 값을 전부 없애거나 어떤 값을 전부 찾을 때 사용 def f(x): return x!=20 #True인 것만 반환해줌 list(filter(f, [10,20,30, 20, 20])) # 실행결과 [10,30] sort, sorted 기준이 되는 값을 계산하는 함수를 만들어서 sorted에 사용 가능 sorted(l, key=f, reverse=False) # 첫 번째는 정렬이 될 배열의 이름 # 두 번재는 정렬을 하는 기준이 되는 키 # 세 번째는 내림차순/오름차순. reverse=False면 내림차순, True(기본값)은 오름차순 sorted(l) #이러면 맨 앞에 있는 값을 기준(key)으로 정렬함 lambda를 사용한 정렬도 가능 print(sorted(l, key=lambd..

Python

자료형 - 리스트

리스트 리스트는 컨벤션 자료형 * 컨벤션 자료형 - 딕셔너리, 튜플, 셋, 리스트 - 같은 값이 있을 경우 같은 곳을 가리키게 설계되어 있음(메모리 효율을 위해서!) 순서를 가진 데이터들의 집합(Sequence) 리스트는 값의 변경 가능 리스트 안에 리스트로 다차원의 리스트를 만드는 것도 가능 리스트 안에 다른 딕셔너리, 셋, 튜플 등을 넣는 것도 가능 리스트의 한 인덱스의 값만 수정도 가능(str의 경우 불가) s="hello world" s[0]="k" #error 곱하기 연산으로 다차원 리스트를 만들게 되면 하나의 리스트를 복제하는 것이므로!!!!! 하나의 주소를 여러 곳에서 참조하는 거랑 똑같음 1차원은 괜찮지만 그 이상은 주의하기!! 리스트의 method append 리스트 맨 뒤에 값을 붙이는..

Python

함수와 변수의 범위

함수란? 함수의 이름은 메모리 상의 코드 블럭을 가리키는 변수이다. 함수를 사용하는 이유 코드의 재사용성 향상 코드의 구조 쉽게 파악 가능 함수의 형태 들여쓰기 함수는 def라는 키워드로 정의됨 똑같이 들여쓰기 된 곳까지 해당 함수의 범위 파이썬은 들여쓰기(intend)로 함수의 범위를 정함 탭으로 한 번에 들여 쓸 수 있지만 PEP-8에서는 스페이스 4번으로 쓰기로 약속했으니 되도록 스페이스로! 파선아실 파라미터는 선언할 때, 아규먼트는 실제 def function(x, y): #여기서 x, y는 파라미터 z = x + y return z print(f'function(5, 7) = {function(5, 7)}') #여기서 5, 7이 아규먼트 리턴이 없으면 None이 자동으로 들어감 return re..

Python

논리연산과 산술연산, 형변환

bool bool의 경우 빈 문자열을 제외하고 True bool('') # 빈 문자열을 제외하고 모두 True bool('a') bool('False') # 문자열 False이기 때문에 True bool(0) # 0을 제외하고 모두 True bool(-1) bool(100) bool(None) # None은 비어있음을 명시해주는 키워드, False bool([]) # 컨벤션 자료형은 비어있으면 False입니다. bool({}) 형변환 데이터타입(바꿀것) 의 형태 int(’2’) s="python" t=tuple(s) # ('p', 'y', 't', 'h', 'o', 'n') 산술연산 print(f'10 + 3 == {a + b}') print(f'10 - 3 == {a - b}') print(f'10 /..

yoursin
'Python' 카테고리의 글 목록 (2 Page)