hojeong
2022.04.12
@hojeong님이 새 포스트를 작성했습니다.
[Day15] 3-10. 가위바위보 게임
<모듈 / 라이브러리 불러오기> import 모듈 파일명/라이브러리명 라이브러리 random : 임의의 수 출력. -> print(random.random()) / random.radint(1,100) time 라이브러리 : time() -> 1970년 1월 1일 0시 0분 0초로 부터 지난 시간을 초 단위 숫자 형태로 표시 : ctime() -> 현재시각을 문자형태로 :sleep() -> 일정 간격 딜레이 <내장 함수> enumerate(시퀀스형 데이터) : 인덱스와 요소를 쌍으로 추출 round(숫자, 반올림할 자릿수) filter(함수, 시퀀스형 또는 딕셔너리형 데이터) : 함수의 반환값이 참인 데이터만 반환 p. 346 컴퓨터와 가위바위보 게임을 할 수 있는 프로그램 작성 조건1 : random라이브러리 사용 조건2 : 프로그램에서 가위, 바위, 보 중 하나를 입력하면 게임 진행 조건3 : 함수 2개 이상 사용 조건4 : 게임결과(이김, 비김, 짐)을 출력 [코드] 및 [실행 결과]
hojeong
2022.04.08
@hojeong님이 새 포스트를 작성했습니다.
[Day13] 3-11. 영화 예매 프로그램 만들기
p. 349 조건에 따라 예매 프로그램 만들기 조건 1 : 영화 목록은 리스트로 미리 정의해 둡니다. 조건2 : 예매할 영화 선택 : 상영중인 영화를 선택할 경우 다음 단계로 넘어간다. 그렇지 않으면 예매할 영화를 다시 묻는다. 관람 인원 선택 : 자연수로 입력해야 다음 단계로 넘어간다. 그렇지 않을 경우 다시 질문한다. 할인권 사용 : 사용여부를 입력받고, 사용시에 할인권 이름을 입력받는다. 존재하지 않은 할인권을 입력하면 다시 할인권 사용 여부 부터 묻는다. 예매 정보 및 가격 출력 : 제목, 인원, 합계 금액, 할인 금액, 실 결제액을 포함한 예매 상세 내역 출력 조건3 : 1인당 가격은 12000원 조건4 : 할인 정보는 딕셔너리 형태로 정의. [코드] [행 결과]
hojeong
2022.04.08
@hojeong님이 새 포스트를 작성했습니다.
[Day13] 1-12. 튜플과 딕셔너리로 문자열 길이 출력하기
1 . 딕셔너리 key(검색어), value(검색 결과) key : 자료형 제한적 ( 변하지 않는 값인 숫자, 문자열, 튜플) -> 리스트x value : 리스트, 튜플, 딕셔너리 등 어떤 자료형도 가능 ex) dictionary = {'a':'apple', 'b':'banana', 'c':'cool'} [코드] [실행 결과] 2 . 딕셔너리 수정/추가/삭제 key, value 함께 쌍으로 추가하거나 삭제 해야함. key는 수정 불가능(value만 수정 가능) key, value 한 쌍 추가하기 : 딕셔너리명[key값] = value 값 key, value 여러쌍 추가하기 : 딕셔너리명.update({key1값:value1값, key2값:value2값,...}) key, value 쌍 삭제하기 : del 딕셔너리명[key값] value 값 수정 : 딕셔너리명[key 값] = 새로운 value 값 [코드] [실행 결과] 3 . for문과 딕셔너리 key 값으로 반복 : 딕셔너리명.keys() -> key 값 반환 (리스트형) value 값으로 반복 : 딕셔너리명.values() -> value 값 반환 key, value 쌍으로 반복 : 딕셔너리명.items() 튜플 자료형에서는 괄호 생략 가능 -> for 반복문 : for key, value in dic.items(): [코드] [실행 결과] p. 277 3개 이상의 문자열이 담긴 튜플을 선언하고, 딕셔너리에 각 문자열의 길이를 저장한 뒤 출력 [코드] [실행 결과]
hojeong
2022.04.07
@hojeong님이 새 포스트를 작성했습니다.
[Day12] 2-2. 문장 내 단어 오름차순으로 출력하기
1 . 집합 <특징> 중복 허용x, 순서x -> 인덱스 이용해 접근하는 것 불가능 set()함수 이용 or 중괄호(데이터 1개 이상 포함 해야 함) 중복 값 제거 한 후 다시 리스트나 튜플로 만들어 사용 가능 1) 합집합 : 모든 요소 포함, 중복된 값은 한번만 구현 : | or union() 2) 교집합 : 중복되는 요소만 구현 : & or intersection() 3) 차집합 : 다른 집합과 중복되지 않은 요소만 구함 : - or difference() [코드] - [실행 결과] 2 . 응용함수 1) 데이터 1개 추가 : add() : 집합.add(데이터) 2) 데이터 여러개 추가 : update() : 집합.update(데이터) 3) 원하는 값 찾아 삭제 : remove() : 집합.remove(데이터) [코드] - [실행 결과] p. 284 입력받은 문자열에서 공백을 기준으로 단어 구분하고 중복 단어를 삭제한 다음, 결과를 오름차순으로 출력 [코드] [실행 결과]
hojeong
2022.04.05
@hojeong님이 새 포스트를 작성했습니다.
[Day10] 1-11. 입력받은 수의 평균 구하기
1 . 리스트 : 여러 개의 데이터를 묶어 하나의 변수에 저장 인덱스는 0부터 시작 리스트의 방 하나에 접근 할 때 : 리스트 이름[인덱스] 하나의 리스트 안에 여러가지 자료형 데이터 저장 가능 데이터 저장 방법 -> 변수[인덱스]=저장할 데이터 [코드] - [실행 결과] 2 . for문, 리스트 <구조> for 변수 in 리스트: print(변수) -> 변수가 리스트 안의 데이터를 가리킴. <구조> for 변수 in range(len(리스트)): print(리스트[인덱스]) 3 . 리스트 슬라이싱 <구조> 변수명[시작번호 : 끝 번호+1] [코드] - [실행 결과] 4 . 리스트 응용 함수 1) 데이터 삽입하기 : 맨 뒤로 삽입 리스트.append(데이터) 2) 원하는 인덱스에 데이터 삽입하기 리스트.insert(값을 추가할 인덱스, 데이터) 3) 데이터 삭제하기 del 리스트[삭제할 값의 인덱스] 4) 원하는 값 찾아 삭제 리스트.remove(삭제할 값) 5) 리스트 정렬 리스트.sort() 6) 인덱스를 거꾸로 만들기 리스트.reverse() [코드] - [실행 결과] 5 . 2차원 리스트 : 리스트 안에 리스트가 있는 경우 [코드] [실행 결과] 6 . 튜플 : a = (1,2) 데이터가 하나일 때에도 데이터 뒤에 쉼표를 붙어야 함 괄호 생략 가능 <특징> 인덱싱이나 슬라이싱으로 데이터 접근 가능 불변적(리스트는 가변적) :ex) 특정 위치의 좌표를 튜플로 저장 -> 색상RGB 여러개의 변수에 값을 한번에 저장 가능. [코드] - [실행 결과] p. 274 숫자 7개를 입력받아 리스트에 저장하고 그 수들의 평균을 구해서 출력하는 프로그램 [코드] - [실행 결과]
hojeong
2022.04.04
@hojeong님이 새 포스트를 작성했습니다.
[Day9] 3-1. 영어 문장 대소문자 올바르게 사용하기
p. 318 문장 내 대소문자를 올바르게 고치는 프로그램 만들기! 조건1 : 문장은 마침표를 기준으로 구분 조건2 : 각 문장의 첫 번째 글자와 '나'를 뜻하는 'I'는 무조건 대문자 조건3 : 그 외의 글자는 소문자 [코드] - [실행 결과] -> 가장 어려웠던 코드 짜기였다. 이해하기도 너무 너무 어려웠다. 문자열.upper() : 대문자로 변환 문자열.lower() : 소문자로 변환 문자열.capitalize() : 첫 글자를 대문자로 변환, 나머지는 소문자. 문자열.strip() : 양쪽 공백 제거. '"word"'.join(list_a) : 작은 따옴표 안에 들어있는 내용 "word"를 각 list_a 요소 사이에 넣어서 리스트 list_a를 문자열로 변환.
hojeong
2022.04.04
@hojeong님이 새 포스트를 작성했습니다.
[Day9] 1-10. 이름 출력하기
1 . 문자열 인덱싱 인덱싱 (indexing) : 무언가를 가리킨다는 의미 문자열 인덱싱 : 문자열의 글자에 번호를 지정하고 가리키는 것 띄어쓰기나 느낌표(!) 등의 특수문자도 번호를 각각 하나씩 지정 0부터 시작 음수로 지정 가능 (맨 뒤에서 부터 -1) [코드] - [실행 결과] 2 . 문자열 슬라이싱 : 원하는 위치부터 원하는 위치까지 문자열을 자르는 방법 인덱스 번호를 알고 있어야 함. <구조> 변수명[시작번호 : 끝번호 +1] 시작 번호 or 끝 번호 중 하나를 적지 않아도 된다. : 시작번호 안적은 경우 -> 첫 글자부터 : 끝 번호를 적지 않은 경우 -> 끝 글자 까지 간격 정하기 <구조> 변수명[시작번호 : 끝번호 + 1 :간격] [코드] - [실행 결과] 3 . 문자열 포매팅 1) 문자열 포맷 코드 사용하기 %d : 정수, %f : 실수 %s : 문자열 포맷 코드와 자료형이 일치하지 않으면 오류 발생 2) format함수 사용하기 (내장함수) 자료형을 신경쓰지 않고 포매팅 {숫자}작성 -> 문자열 뒤에 .format(...) 인덱스 사용하기 or format()안에 적은 값 순서대로 포매팅. or 변수 사용하기 ex) print("{name}" .format(name="철수") 3) f문자열 사용 문자열 앞에 f붙이고 포매팅할 위치에 있는 변수를 {}로 감싼다. [코드] [실행 결과] 4 . 문자열 응용 함수 문자열 길이 구하기 : len() : len(문자열) 특정 문자의 개수 세기 : count() : 문자열.count(문자) 특정 문자의 위치 찾기 : find() : 문자열.find(문자) -> 없디면 =-1 특정 문자열을 다른 문자열로 변환하기 : replace() : 문자열.replace(기존 문자열, 대체 문자열) 특정 문자를 기주으로 문자열 자르기 : split() : 문자열.split(문자) -> 문자를 적지 않은 경우 공백을 기준으로 잘린다. [코드] [실행 결과] p. 272 이름 출력하기 [코드] -> [실행 결과] 김호정
hojeong
2022.04.01
@hojeong님이 새 포스트를 작성했습니다.
[Day8] 1-9. 정수 n까지의 합을 구하는 함수 만들기
1 . 함수 <구조> 함수 정의 def 함수명(매개변수): 실행문1 실행문2 return 반환하는 값 -> def : 함수를 만들 때 이것이 함수라는 것을 정의 return : 아웃풋으로 변환할 값 적기 없다면 생략 가능 -> 코드의 가독성과 재사용성을 높일 수 있다! <구조> 함수 호출 -> 실행 함수명(전달인자) -> 전달인자 : 함수에 인풋으로 넣어줄 값, 매개변수가 없으면 전달인자도 없다! [코드]-[실행결과] 2 . 매개변수가 있는 함수 함수를 정의할 때 적은 매개변수의 개수에 맞게 전달인자를 적어야 한다. 매개변수의 변수와 전달인자의 변수는 다를 수도 있다. [코드] [실행 결과] 3 . 반환값이 있는 함수 [코드]-[실행 결과] 4 . 변수의 사용 범위 지역 변수 : 함수안에서 만든 변수는 함수 안에서만 사용 가능 전역 변수 : 코드 전체에서 사용 가능 5 . 내장함수와 예약어 내장함수 : 사용자의 편의를 위해서 파이썬에서 미리 만들어 놓은 함수 ex) print(), input(), abs() 특징 1) 함수를 정의하지 않고 호출 가능 2) 내장 함수 이름을 변수 이름으로 짓지 않는 것이 좋다. -> 내장함수의 기능을 사용 x 예약어 : 미리 문법적인 의미를 담아 둔 단어 -> 변수 이름 사용 불가능 ex) False, True, and, as, def 등 [코드]-[실행 결과] p. 270 정수 n까지의 합을 구하는 함수 만들기 [코드] [실행 결과]
hojeong
2022.03.30
@hojeong님이 새 포스트를 작성했습니다.
[Day6] 1-6. 합격과 불합격 통보하기
1 . 조건문 if 조건식1: 실행문1 else 조건식2: 실행문2 -> 조건식1이 참일 경우 실행문1 실행, 거짓이라면 실행문2 실행 주의할 점 : 들여쓰기에 유의하기! ( 콜론 : 다음에 들여쓰기를 한 후 문장을 적어야 한다) 2 . 비교 연산자 == (a == b) : a와 b가 같다. != ( a != b) : a와 b가 같지 않다. 3 . 논리 연산자 and : 조건들이 모두 참일 경우에 참 or : 조건들 중 하나 이상이 참이면 참 not : 논리부정 ( 참이면 거짓, 거짓이면 참) 4 . elif 조건문 elif = else + if -> 갯수 제한 없이 사용 가능 구조 if 조건식1: 실행문1 elif 조건식2: 실행문2 else : 실행문3 else는 생략가능. 하지만 사용하는 경우에는 가장 마지막에 사용. [코드] [실행 결과] [코드] [실행 결과] [코드] [실행 결과] [코드] [실행 결과] p. 264 [코드] [실행 결과]
hojeong
2022.03.25
@hojeong님이 새 포스트를 작성했습니다.
[Day3] 1-3. 자료형 마스터
1 . 변수 : 데이터를 저장하기 위해 컴퓨터 안에 만들어 놓은 방 = 이란? : 오른쪽 값을 왼쪽에 대입한다는 의미. : name = "Bob" -> name이라는 변수에 "Bob"이라는 문자열 저장 2 . 숫자형 int = 정수형 (Integer type) float = 실수형 (Float type) str = 문자형 3 . 불 자료형 (Bool) : 참(True)와 거짓(False)을 값으로 가지는 자료형 ★ True와 False의 대소문자를 지켜주어야 한다. -> 그렇지 않으면 에러! <class 'bool'> 4 . 변수 이름 규칙 꼭 지켜야 할 규칙 1) 변수 이름은 숫자로 시작할 수 없다! 2) 공백 사용 불가능! 3) 예약어는 변수이름으로 사용할 수 없다. ex) True, False 등 지키지 않아도 되지만 권장되는 규칙 1) 변수 이름은 스네이크 케이스 규칙에 따라 짓는다. : class_student_name (모두 소문자로 표기하고 단어는 언더바(_)로 구분) 2) 데이터의 의미를 담아 짓는다. ex) teacher_name="Bob" p.257 맨 위 <class 'bool'> 캡처를 잘못 했네용 ㅎㅎ
hojeong
2022.03.24
@hojeong님이 새 포스트를 작성했습니다.
[Day2] 1-2. 출력 프로그램 만들기
1 . 문자열 출력 큰 따옴표와 작은 따옴표 모두 사용가능, 짝이 맞아야 함. -> 큰 따옴표로 시작하면 큰따옴표로 끝을 맺어야 한다. 문자열 안에 큰따옴표가 있다면, 작은 따옴표로 감싸고, 작은 따옴표가 있다면 큰따옴표로 감싸기! 2 . 띄어쓰기가 있는 출력 쉼표(,) 로 연결하면 : 문자열 사이에 띄어쓰기가 함께 출력 더하기(+)로 연결하면 : 띄어쓰기 없이 연결되어 출력 빈칸으로 연결하면 : 띄어쓰기 없이 연결되어 출력 3 . 여러 줄 출력 3개의 따옴표 쌍으로 감싸면 여러 줄을 한꺼번에 출력 가능 (작은 따옴표 or 큰 따옴표) print("""~~~""") or print('''~''') : 따옴표 3개 사이의 모든 줄 바꿈 인식된다! print('''~~ '8' ~~~ ''') -> 작은 따옴표 3개와 작은 따옴표 1개는 다른 기호로 인식 4 . 주석 한 줄 주석 : # 여러 줄 주석 : """~""" or ''' ~ ''' 5 . 줄 바꿈 없는 출력 end : 출력하는 문장 맨 끝에 붙일 문자 지정 print("~~", end = "ㅋㅋ") print("~~~" ,end="") : print()에서 자동으로 생기는 줄 바꿈 제거 가능! end default(기본값) = \n (= 줄 바꿈) 6 . 구분자를 포함한 출력 sep : 쉼표로 나열된 여러 문자열을 이어주는 구분자 지정 가능. print("~","~", sep="ㅋ") : ~ㅋ~ p.254 출력 프로그램 만들기