프로그래밍 언어/Python 27

[Python 실습] Coding Test - 2

[문제] n번째로 큰 수 찾기 - 사용자로부터 정수를 반복적으로 입력 받는다. - 반복 입력은 0을 입력하면 반복을 종료한다. - 이 후 검색할 순위를 입력 받으면 해당 순위의 숫자를 출력하여 입력 받은 값의 범위를 벗어난 순위를 입력하면 순위를 다시 입력 받는다. [예시] 정수를 입력하세요(종료:0) 5 4 6 2 1 0 검색할 순위: -4 리스트의 범위를 벗어났습니다. 다시 입력하세요: 1 1번째로 큰 수는 6입니다. numbers = [] print('정수를 입력하세요(종료:0)') while True: num = int(input()) if num == 0: break numbers.append(num) numbers.sort(reverse=True) while True: rank = int(in..

[Python 실습] Coding Test - 1

[문제-1] 문자열을 구성하는 문자의 개수 세기 - 사용자로부터 임의의 문자열을 입력받아 해당 문자열을 구성하는 문자들 및 각 문자의 개수를 출력하는 프로그램을 작성하세요. [예시] 입력: 가가가bbbbcc# 출력: 가3b4c2#1 data = input('입력: ') mydic = {s:data.count(s) for s in data} print('출력: ', end='') # for문 밖에 출력을 써줌 for k,v in mydic.items(): # key값과 value값을 가져와줌 print(k,v,sep='',end='') [문제-2] 분리한 문자열의 첫 번째 문자 출력하기 - 사용자로부터 임의의 문자열을 입력 받아 공백을 기준으로 분리한 루, 분리된 문자열의 첫 번째 글자만 모아서 출력하는 ..

[Python실습] Banking System

# 계좌를 관리하는 클래스 class Account: def __init__(self, owner, accNo, balance): self.owner = owner self.accNo = accNo self.balance = balance # 잔고 조회 def getBalance(self): return self.balance # 입금 def deposit(self, amount): self.balance += amount # 계좌 정보 조회 def showAccountInfo(self): return f'계좌주:{self.owner}, 계좌번호:{self.accNo}, 잔고:{self.balance}' # 출금 def withdraw(self, amount): if self.balance >= amou..

[Python] 기본 문법

1. 변수 ■ 파이썬에서 변수의 작성 변수 선언 시 자료형을 사용할 필요 없다. 값에 의해 변수의 타입이 결정 레퍼런스 변수만 존재 ■ 변수명 소문자, 대문자, 숫자, 언더스코어(_) 가능 숫자로 시작할 수 없다. 예약어를 변수로 사용할 수 없다. 유니코드를 지원한다. 2. 예약어 ■ 예약어란? 개발을 할 때 파이썬 인터프리터 내에서 이미 특정 용도로 사용하기 위해 지정된 단어를 예약어라고 한다. 예약어는 변수나 함수명 등 identifier(식별자)로 사용할 수 없다. ■ 예약어의 종류 False class finally is return None continue for lambda try True def from nonlocal while and del global not with as elif if..

[Python] 자료형

■ 자료형 기본 모든 데이터는 객체이다. 객체의 타입을 바꿀 수 없다 (강형 타입) 라인유지 : 문자열에서 \를 이용하면 연산식이나 표현삭을 여러 줄에 나눠서 쓸 수 있다. ■ 자료형의 종류 1. 논리(Boolen) - 참과 거짓을 나타내는 자료형 - Boolean 자료형 상수 : False / True 2. 정수 - 소수점이 없는 수 - 10진수 : 일반적인 수 (113) - 2진수 : 0b or 0B가 붙은 수 (0b10) - 8진수 : 0o or 0O가 붙은 수 (0o10) - 16진수 : 0x or 0X가 붙은 수 (0x10) 3. 실수 - 소수점이 있는 수 4. 복소수 - 제곱해서 음수가 되는 수 (실수부 + 허수부) - 실수부 : 복소수.real - 허수부 : 복소수.image - 켤레 복소수..

[Python] 연산자 및 자료형 변환

■ 파이썬 연산자 연산자 설명 예 결과 + 더하기 문자열 결합 5 + 8 'a' + 'b' 13 'ab' - 빼기 90 - 10 80 * 곱하기 문자열 연결 반복 4 * 7 'la' * 3 28 'lalala' / 부동소수점 나누기 7 / 2 13 / 3 3.5 4.333333333333333 // 정수 나누기 (소수점 이하 버림) 7 // 2 3 % 나머지 7 % 3 1 ** 지수(거듭제곱) 3 ** 4 81 > 비트 이동 연산 2 > 1 8 5 # 산술 연산자 a = 10 b = 35 print(a+b) print(a-b) print(a*b) print(a/b) print(a//b) print(b//a) # + 연산자 : 문자열 결합 (연산자 재정의) # 단! 숫자와 문자열 결합은 불가능 c = '사..

[Python] 표준 입출력

■ 표준 입력 - 입력 받은 모든 데이터는 문자열 - input() a = int(input('밑변을 입력: ')) # 입력 받은 값은 문자열 타입으로 반환 -> int 함수로 정수형으로 변환 b = int(input('높이를 입력: ')) print('넓이는:', a*b) ■ 표준 출력 - sep : 값을 화면에 출력할 때 출력할 데이터들 사이를 표현하는 문자열. Default는 공백 - end : 마지막 출력 데이터(value)를 화면에 출력한 후 마지막에 추가되는 문자열. Default는 new line - file : value를 출력할 객체. Default는 현재 sys.stdout(모니터) - flush : 스트림을 강제로 플러시 할지 여부. Default는 False a = 10 b = 20..

[Python] 제어문과 반복문 (if, while, for, break, continue)

1. 제어문 - if ■ if 문 조건문, 다른 언어와 유사 수행할 문장은 반드시 들여쓰기 들여쓰기는 언제나 같은 깊이로 해여 한다. 탭, 스페이스 2가지를 혼용해서 쓰면 안된다. 최근에는 공백 4개 if 조건문, while, for 문 끝에 콜론(:)을 사용 조건문에 비교 연산식 대신 변수를 바로 쓸 수도 있으며, 변수 자체가 논리식이 되는데 이때 각 변수의 논리값은 다음과 같이 결정된다. 타입 참 거짓 숫자 0이 아닌 숫자 0 문자열 비어있지 않은 상태 " " 리스트, 튜플, 딕셔너리 비어있지 않은 상태 빈 상태 ■ if 문의 형식 score = float(input('성적입력: ')) if score >= 90: print('합격') elif 70 = 100 or 부자 >= 20 else '대도시 ..

[Python] 문자열 다루기

1. 문자열 ■ 문자열의 특징 파이썬3은 Unicode 지원한다. 문자열은 immutable한 데이터이다. '문자열', "문자열", '''문자열''', """문자열""" Single quotation('''), double quotation(""")을 3개씩 문장의 앞 뒤로 감싸면 여러 줄로 구성된 문자열을 만들 수 있다. ■ 문자열 관련 연산자 : + * 문자열 연결 : + (문자열과 숫자 연결 불가) 문자열 반복 : * ■ Escape Sequence - 문자 앞에 \을 붙여 언어에서 정의되어 있는 원래의 의미를 벗어나는 문자들을 말한다. 이스케이프 시퀀스 의미 \\ 역 슬래시 ( \ ) \' 작은따옴표 ( ' ) \" 큰따옴표 ( " ) \a ASCII 벨 (BEL) \b ASCII 백스페이스 (B..

[Python] Collection - List

1. List ■ List 특징 배열과 같은 자료(시퀀스 구조, 즉 순서가 있다), 수정 가능하다, 가변적이다. 리스트의 요소는 일반적으로 같은 타입이지만 다른 타입을 썩어서 저장하는 것도 가능하다 (일반적이지는 않음) 첨자로 음수 가능 + 연산자를 이용하면 두 개의 서로 다른 리스트를 붙일 수 있다. [] 또는 list()를 이용해 생성 ■ List slicing - 문자열과 동일하게 슬라이싱 가능 ■ Deep Copy - [:] 또는 copy 모듈의 deepcopy() 함수를 이용하여 깊은복사 가능 ■ List 연산 + : 리스트 연결 * : 리스트 반복 ■ List 관련 함수 함수명 설명 append() 리스트의 뒤에 데이터 추가하기 sort() 리스트를 정렬 역순으로 정렬하기 위해서는 revers..