본문 바로가기

분류 전체보기199

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.
Python - 사전과 집합[사전] - 키와 값의 쌍, 사전 관리, 사전 활용 Chap.10 사전과 집합[사전] - 키와 값의 쌍, 사전 관리, 사전 활용 사전 키와 값의 쌍, 사전 관리, 사전 활용 키와 값의 쌍 { "키": 값, ... } dic = { 'boy': '소년', 'school': '학교', 'book': '책' } print(dic) 결과 {'boy': '소년', 'school': '학교', 'book': '책'} dic = { 'boy': '소년', 'school': '학교', 'book': '책' } print(dic['boy']) # index와 비슷한데 숫자대신 key print(dic['book']) name = 'boy' print(dic[name]) # print(dic['girl']) # 오류 결과 소년 책 소년 dic = { 'boy': '소년',.. 2020. 7. 25.
Python - 리스트와 튜플[튜플] - 불변 자료 집합, 튜플로 가능한 일 Chap.9 리스트와 튜플[튜플] - 불변 자료 집합, 튜플로 가능한 일 튜플 불변 자료 집합, 튜플로 가능한 일 불변 자료 집합 (값, ... ) 값, [...] 추가/수정/삭제 불가 읽기만 가능 --> 리스트보다 속도가 빠름 score = 88, 95, 70, 100, 99 print(score) score = 88, # score=(88,) print(score) score = 88 # score=(88) 단순 우선 순위, 튜플 X print(score) 결과 (88, 95, 70, 100, 99) (88,) 88 한 개짜리 튜플 만들 때 반드시 , 를 넣어주어야한다. 튜플로 가능한 일 index읽기, 연결 tu = 1, 2, 3, 4, 5 print(tu[3]) print(tu[1:4]) prin.. 2020. 7. 25.
Python - 리스트와 튜플[예제] - Number guessing game(추가) Chap.9 리스트와 튜플[예제] - Number guessing game(추가) 리스트 예제 Number guessing game(추가) Number guessing game(추가) Number guessing game 시 HANGMAN 문자열 한줄 씩 출력 import random # Hang man 추가. HANGMAN = """ ---+ | O /|\\ / \\ """ def printHangman(lines, i): # 추가. 프린트용 함수 (루프) for line in lines[:i]: print(line) def rand(start, end): return int(random.random()*(end-start)) + start def main(): number = rand(1, 100) .. 2020. 7. 25.
Python - 리스트와 튜플[리스트 관리] - 삽입, 연결, 삭제, 검색, 정렬, 컴프리핸션 Chap.9 리스트와 튜플[리스트 관리] - 삽입, 연결, 삭제, 검색, 정렬, 컴프리핸션 리스트 관리 삽입, 연결, 삭제, 검색, 정렬, 컴프리핸션 CRUD를 기억하자. Python tutorial 검색을 활용하자. 삽입 .append(값) ★★★ - 리스트의 끝에 값을 추가 .insert(위치, 값) - 지정한 위치에 값을 삽입 nums = [1, 2, 3, 4] # empty list -> nums=[] nums.append(5) print(nums) nums.insert(2, 99) print(nums) 결과 [1, 2, 3, 4, 5] [1, 2, 99, 3, 4, 5] nums = [1, 2, 3, 4] nums[2:2] = [90, 91, 92] # 새로운 값들을 삽입 print(nums) .. 2020. 7. 25.
Python - 리스트와 튜플[리스트] - 자료의 집합, 리스트의 요소, 이중 리스트 Chap.9 리스트와 튜플[리스트] - 자료의 집합, 리스트의 요소, 이중 리스트 리스트 자료의 집합, 리스트의 요소, 이중 리스트 서로 다른 data type이 있어도 괜찮다. 자료의 집합 score = [88, 95, 70, 100, 99] total = 0 for s in score: total += s print("총점: ", total) print("평균: ", total/len(score))1 결과 총점: 452 평균: 90.4 리스트가 아닌 type을 list로 바꿔주는 함수 print(list("Korea")) 결과 ['K', 'o', 'r', 'e', 'a'] str="hello" 나 list=[1,2,3] 등을 쓰면 str함수와 list함수를 이용할 수 없다. 많이하는 실수 리스트의 요.. 2020. 7. 25.
Python - 문자열 관리[포맷팅] - 포맷팅, 선형 포맷팅, 자리 채움방식 Chap.8 문자열 관리[포맷팅] - 포맷팅, 선형 포맷팅, 자리 채움방식 포맷팅 포맷팅, 선형 포맷팅, 자리 채움방식 포맷팅 %d 정수 %f 실수 %s 문자열 %c 문자 하나 %h 16진수 %o 8진수 %% % 문자 %[-]폭[.유효자리수]서식, 폭에는 소수점에 포함 , 반올림 발생 price = 500 print("궁금하면 " + str(price) + "원!") mont = 8 day = 15 anni = "광복절" print("%d월%d일은 %s이다." % (mont, day, anni)) # python 2 style 결과 궁금하면 500원! 8월15일은 광복절이다. value = 123 print("###%d###"%value) print("###%5d###"%value) # 5자리로 출력 (.. 2020. 7. 25.
Python - 문자열 관리[문자열 메서드] - 검색, 조사, 기타 메서드, 변경, 분할, 대체 Chap.8 문자열 관리[문자열 메서드] - 검색, 조사, 기타 메서드, 변경, 분할, 대체 문자열 메서드 검색, 조사, 기타 메서드, 변경, 분할, 대체 검색 .find(str): str 문자열을 찾아 인덱스 반환 , 없으면 -1 반환 .rfind(str): 뒤에서 str 문자열을 찾아 인덱스 반환 , 없으면 -1 반환 .index(str): find()와 동일, 없으면 예외 발생 (오류) .count(str): str 문자열이 몇번 등장하는지 리턴 .의 의미 : 객체 def main(): s = "python programming" print(len(s)) print(s.find('o')) # 없으면 -1 반환 print(s.rfind('o')) # 없으면 -1 반환 print(s.index('r').. 2020. 7. 25.
Python - 문자열 관리[문자열 분리] - 첨자, 슬라이싱 Chap.8 문자열 관리[문자열 분리] - 첨자, 슬라이 문자열 분리 첨자, 슬라이싱 첨자 문자열[정수] 0부터 인덱싱 문자열[-정수] 끝에서부터 인덱싱 offset : 떨어져있는 간격 문자열도 for문에서 이용 가능 (문자열도 collection) s = "python" for c in s: print(c, end = ",") 결과 p,y,t,h,o,n, s = "python" for i in range(len(s)): # len() : 문자열의 길이 print(s[i], end = ",") 결과 p,y,t,h,o,n, 문자열도 일종의 Sequence(문자열, 리스트, 튜플) 슬라이싱 문자열[begin:end:step] (end 미포함) - step: 음수이면 뒤에서부터 진행 s = "012345678.. 2020. 7. 25.
Python - 함수[예제] - 함수 만들기 연습, Number guessing game Chap.7 함수[예제] - 함수 만들기 연습, Number guessing game 함수[예제] 함수 만들기 연습, Number guessing game 함수 만들기 연습 import random start = 1 rng = 6 number = int(random.random()*(rng)) + start 자주 쓰는 동작 함수로 만들기 import random start = 1 rng = 6 def rand(start, rng): number = int(random.random()*(rng)) + start return number number = rand(start,rng) print(number) Python에서는 이미 만들어진 함수를 변수로 쓸 수 있다. 다만 다시 함수를 이용할 수 없다. ex).. 2020. 7. 25.