본문 바로가기

인터페이스 개발/Python61

Python - 예외 처리[예외 처리] - 예외, 예외 처리, 예외의 종류, raise Chap.13 예외 처리[예외 처리] - 예외, 예외 처리, 예외의 종류, raise 예외 처리 예외, 예외 처리, 예외의 종류, raise 에러: 복구 불가, 예외: 복구 가능(defalut action: 종료) 예외 프로그램 실행 중 발생한 에러 --> 프로그램 실행 종료 (디폴트) str = "89점" score = int(str) print(score) print("작업완료") 결과 Traceback (most recent call last): File "C:/workspace/01_python/chapter13/ex13-01.py", line 9, in score = int(str) ValueError: invalid literal for int() with base 10: '89점' 예외 처리.. 2020. 7. 27.
Python - 표준모듈[sys 모듈] - 시스템 정보, 명령형 인수 Chap.12 표준모듈[sys 모듈] - 시스템 정보, 명령형 인수 sys 모듈 시스템 정보, 명령형 인수 시스템 정보 import sys print("버전: ", sys.version) print("플랫폼: ", sys.platform) print("바이트 순서: ", sys.byteorder) print("모듈 경로: ", ) for path in sys.path: # 자신의 directory를 먼저 찾는다. print(path) sys.exit(0) # 프로그램 강제 종료, 인수로 종료 코드 지정 가능 결과 버전: 3.7.7 (default, May 6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)] 플랫폼: win32 바이트 순서: little 모듈 경로: C:\wo.. 2020. 7. 27.
Python - 표준모듈[난수] - random Chap.12 표준모듈[난수] - random 난수 random 모듈 random 모듈(1) .random() - 0 ~ 1 사이의 난수 리턴 (1은 미포함) import random for i in range(5): print(random.random()) 결과 0.31613467782098836 0.9210269418989194 0.37451066214301465 0.7120744921368977 0.16548941180523558 random 모듈(2) .randint(begin, end) - begin ~ end 사이의 정수 난수를 리턴 (end도 포함) .randrange(begin, end) - begin ~ end 사이의 정수 난수를 리턴 (end도 포함되지 않음 ) .uniform(begi.. 2020. 7. 27.
Python - 표준모듈[시간] - time, 실행 시간 측정, 실행 멈춤, 달력, 날짜 Chap.12 표준모듈[시간] - time, 실행 시간 측정, 실행 멈춤, 달력, 날짜 시간 time, 실행 시간 측정, 실행 멈춤, 달력, 날짜 시간조사, time 모듈 1970년 1월 1일 자정을 기준으로 경과한 시간을 초 단위로 표현 - 에폭(Epoch) 시간 또는 유닉스 시간 time import time print(time.time()) # 전세계 공통 결과 1595234097.897746 import time t = time.time() print(time.ctime(t)) # c는 문자로 표현해달라. 결과 Mon Jul 20 17:37:07 2020 import time t = time.time() print(time.localtime(t)) # 현재위치 기반으로 해석 결과 time.stru.. 2020. 7. 27.
Python - 표준모듈[수학] - import, math, statistics Chap.12 표준모듈[수학] - import, math, statistics 모듈 : 재사용 가능 모듈의 가장 낮은 단위는 함수이다. python 에서 성격이 유사한 함수끼리 파일에 모아두었다. 수학 import, math, statistics 임포트(import) 다른 파일에 정의된 변수 , 함수, 객체 등을 사용하기 전에 이를 알리는 것 표준 모듈 - 파이썬에서 제공하는 모듈 import 모듈 [as alias] # 별칭(옵션) from 모듈 import 함수명 # 필요한 함수만 쓸 때 import math print(math.sqrt(2)) from math import sqrt print(sqrt(2)) import math as m print(m.sqrt(2)) from math import .. 2020. 7. 26.
Python - 컬렉션 관리[예제] - 사전 활용[Value를 기준으로 정렬] Chap.11 컬렉션 관리[예제] - 사전 활용[Value를 기준으로 정렬] 컬렉션 관리[예제] 사전 활용[Value를 기준으로 정렬] 사전 활용[Value를 기준으로 정렬] 사전의 value 기준 정렬 song = """by the rivers of babylon, there we sat down yeah we wept, when we remember zion. when the wicked carried us away in captivity required from us a song now how shall we sing the lord's song in a strange land""" alphabet = dict() for c in song: if c.isalpha() == False: continu.. 2020. 7. 26.
Python - 컬렉션 관리[컬렉션의 사본] - 리스트의 사본 Chap.11 컬렉션 관리[컬렉션의 사본] - 리스트의 사본, is 연산자 컬렉션의 사본 리스트의 사본 리스트의 사본 시퀀스.copy() -> 시퀀스 복사본 listcopy1 list1 = [1, 2, 3] list2 = list1 # 참조 print(list1 == list2) list2[1] = 100 print(list1) print(list2) print(list1 == list2) 결과 True [1, 100, 3] [1, 100, 3] True Heap에 list2=list1이 참조될 뿐이다. list2 = list1 대입에 의해 list2가 list1의 별명이 될 뿐 독립적인 메모리까지 확보하는 것은 아니다. listcopy2 두 리스트를 완전히 독립적인 사본으로 만들기 copy 메서드 li.. 2020. 7. 26.
Python - 컬렉션 관리[람다 함수] - filter, map, 람다 함수 Chap.11 컬렉션 관리[람다 함수] - filter, map, 람다 함수 람다 함수 filter, map, 람다 함수 filter filter(판정함수, 시퀀스) -> 시퀀스 () - 시퀀스의 각 요소를 판정함수에 전달하여 True를 리턴하는 요소로만 구성된 새로운 시퀀스 리턴 판정함수 : True, False를 판정할 수 있는 함수 def flunk(s): return s < 60 score = [ 45, 89, 72, 53, 94 ] for s in filter(flunk, score): # 함수의 이름만 전달한다. print(s) 결과 45 53 filter 함수의 메커니즘 def filter( fn, lst ): new_list=[] for a in lst: if fn(a): # 함수 fn의 .. 2020. 7. 26.
Python - 컬렉션 관리[컬렉션 관리 함수] - enumerate, zip, any(), all(), 변수명 표기법 Chap.11 컬렉션 관리[컬렉션 관리 함수] - enumerate, zip, any(), all(), 변수명 표기법 컬렉션 관리 함수 enumerate, zip, any(), all(), 변수명 표기법 enumerate enumerate(시퀀스 [, start]) - 시퀀스의 인덱스와 요소를 튜플 묶어서 순회 기존 코드(1) score = [88, 95, 70, 100, 99] for s in score: print("성적 : ", s) # index에 대한 정보가 없다. 결과 성적 : 88 성적 : 95 성적 : 70 성적 : 100 성적 : 99 기존코드(2) score = [88, 95, 70, 100, 99] for no in range(len(score)): print(str(no+1) + ".. 2020. 7. 26.
Python - 함수[인수의 형식] - 키워드 인수, 키워드 가변 인수 Chap.7 함수[인수의 형식] - 키워드 인수, 키워드 가변 인수 인수의 형식 키워드 인수, 키워드 가변 인수 키워드 인수 일반적으로 함수 호출시 인수의 배치 순서대로 매칭 인수 순서가 아닌 인수의 명칭으로 매칭하는 방법 이전 가변 인수 def int_sum(*numbers): total = 0 for n in numbers: total += n return total def main(): print(int_sum(1, 2, 3, 4, 5)) print(int_sum()) # 인수 없이 호출이 된다. 루프를 돌지 않는다. main() 결과 15 0 키워드 인수 def calcstep(begin, end, step): total = 0 for num in range(begin, end+1, step): .. 2020. 7. 25.
Python - 사전과 집합[집합] - 집합 정의, 집합 연산 Chap.10 사전과 집합[집합] - 집합 정의, 집합 연산 집합 집합 정의, 집합 연산 집합 정의 { 값1, 값2, ... } 값의 중복을 허용하지 않음 set(다른 시퀀스) - 집합 변환 함수 .add(값) - 집합에 값 추가 , 이미 값이 있으면 추가하지 않음 .remove(값) - 집합에서 값을 제거 , 값이 없는 경우 예외 발생 print(set('aaabbbccc')) # 문자열 -> 글자 하나하나가 원소가 된다. print(set([12, 34, 56, 78])) print(set(('홍길동', '고길동','둘리'))) print(set({'boy': '소년', 'school': '학교', 'book': '책'})) # 사전의 키 목록을 집합으로 변환 print(set()) # 비어있는 집합.. 2020. 7. 25.
Python - 사전과 집합[예제] - login Chap.10 사전과 집합[예제] - login 사전과 집합 예제 login login 회원 정보 dict(id, password) users = { "go":"g1234", "hong":"h1234" } [문제] 사용자로부터 id와 password를 입력 받아 로그인 성공 여부를 출력 한다. 실패시 최대 3번 시도 가능 [성공시] 로그인에 성공했습니다. 반갑습니다. "님" [실패시] 는 존재하지 않습니다: 비밀번호가 틀렸습니다. 내 풀이 login users = { "go":"g1234", "hong":"h1234" } def main(): for _ in range(3): ID = input("ID를 입력하세요. ") PW = input("PW를 입력하세요. ") if ID in users: if P.. 2020. 7. 25.