-
[TIL] 멋사 AI스쿨 5일차 파이썬 기초 2- day(1)멋쟁이사자 AI 스쿨 8기 2023. 1. 4. 10:56728x90
5일차 파이썬 기본:
대소문자 바꾸기
연산자 알아보기
# 대문자 변경
string.upper()
data = 'python' data.upper() 'PYTHON'# 소문자 변경
string.lower()
data = 'python' data.lower() 'python'
# 문자가 소문자인지 확인하기
string.islower()
data = 'python' data.islower() True# 문자가 대문자인지 확인하기
string.isupper()
data = 'python' data.isupper() False파이썬 연산자
산술 : +, - < *, /, //, % < ** : 데이터(int,str,list) + 데이터 = 데이터
할당 : 식별자 <산술>= 데이터
비교 : ==, !=, >, <, >=, <= : 데이터 + 데이터 = 논리값
논리 : not, and, or : 논리값 + 논리값 = 논리값
멤버 : 특정 데이터가 컬렉션 데이터에 포함되었는지 확인 : 결과 논리값 출력
data1, data2 = 14, 4 data1 - data2 #14-4 10data1, data2 = 14, 4 data1 // data2 #14나누기 4했을때 몫을 출력 3data1, data2 = 14, 4 data1 % data2 # #14나누기 4했을때 나머지를 출력 2data2 = 4 data2 ** 2 # 4의 제곱 16data2 = 4 data2 ** 0.5 # 4에 루트를 씌우는것 과같음 2연산자 우선순위
1 + 2 * 3, (1 + 2) * 3 7,9우리가 아는 것과 같이 +,* 있을땐 * 먼저
* 보단 () 과 먼저 계산된다..
문제1.
나이를 입력받아 연령대로 출력하는 코드 작성
age = 37 ages = age // 10 *10 ages 3037// 10 은 몫이 3 이고 거기에 10곱하면 30 이 나온다..
데이터 타입에 따른 연산자 사용
d1, d2, d3, d4 = 1, 2, '3', '4' d1+d2,d3+d4 (3, '34')d1+d2은 1+2 이다 int형이기에 3이 나오고
d3+d4은 '3'+'4' str형이기 때문에 34로 연산되지 않고 문자두개가 붙은걸로 나온것이다..
데이터타입의 형변환
d1, d2, d3, d4 = 1, 2, '3', '4' d1 + int(d3), str(d1) + d3 (4, '13')d1 + int(d3) 은 1 +3 이다 변수 앞에
int() 붙이면 int형으로 변환된다.
str(d1) + d3 은 '1'+'3' 이다 변수앞에서
str()붙이면 str형으로 변환된다.
추가적인 연산, 형변환
d5, d6 = [1, 2], list('ABC') d4 = '4' print(d5 + d6, d6 * 2, d4 * 5) [1, 2, 'A', 'B', 'C'] ['A', 'B', 'C', 'A', 'B', 'C'] 44444d5+d6 은 [1,2] +['A', 'B', 'C'] 이렇게 더한것이다.
d6 * 2 은 ['A', 'B', 'C'] 가 *2 했으니 2번 반복된 것이다.
d4은 문자열인 '4'가 5번 반복것이다.
할당연산자 : 누적해서 산술연산 수행
data = 10 data += 5 # data = data + 5 data 15
10+5 과정인데
data += 5 와 data = data + 5 같은것이다..
비교연산자
==, !=, >, <, >=, <=
데이터 + 데이터 = 논리값
수식의 문법이 틀리면 Fasle, 맞으면 True 출력
d1, d2 = 10, 5 d1 == d2, d1 != d2, d1 > d2 (False, True, True)d1와d2은 같은가? 거짓
d1와 d2은 같지않은가? 진실
d1는 d2 보다 큰가? 진실
문제2.
ATM 기기 코드로 구현
인출이 가능하면 True, 불가능하면 False 출력
인출금액을 입력받아서 처리 : input()
balance = 10000 draw=int(input("금액을 입력하세요:")) # 나는 이때 3000 입력했다.. balance >= draw True
논리연산자
논리값 + 논리값 = 논리값 : 논리값(데이터+데이터) + 논리값(데이터+데이터) = 논리값
비교연산자 : 조건1개, 논리연산자 : 조건2개이상
not, and(T: T and T = T), or(F: F or F = F)
우선순위 not > and > or
논리 연산자설명조건 1 and 조건 2조건 1,2 모두 참일 때 참이 된다조건 1 or 조건 2조건 1 또는 조건 2 중 하나만 참이어도 참이 된다.not 조건조건이 참일 때 결과는 거짓,조건이 거짓일 때 결과는 참이 된다.문제3.
# ATM 기기 업그레이드 # 1회당 최대 인출금액은 5000원 입니다. # 잔고보다 인출금액이 작거나 같음 : 최대인출금액 5000원 # 인출이 가능하면 True, 불가능하면 False 출력 하세요 balance = 10000 draw = 4000 (balance >= draw) and (draw <= 5000) True멤버연산자
컬렉션 데이터에서 특정 데이터가 있는 확인 : 결과 논리값
in, not in
data = list('ABC') 'B' in data, 'D' in data, 'D' not in data (True, False, True)list('ABC') 은 ['A','B',C'] 이므로
data에 'B' 는 있고 'D' 는 없다..
문제4.
#선수명단에서 손흥민이 있으면 True 출력 players = ['메시', '손흥민', '호날두'] '메시' in players , '손흥민' in players, '호날두' not in players (True, True, False)
728x90'멋쟁이사자 AI 스쿨 8기' 카테고리의 다른 글
AI 스쿨 8기를 마치며 (0) 2023.06.08 [TIL] 멋사 AI스쿨 5일차 파이썬 기초 2- day(2) (0) 2023.01.04 [TIL] 멋사 AI스쿨 4일차 파이썬 기초 1- day(4) (0) 2023.01.02 [TIL] 멋사 AI스쿨 4일차 파이썬 기초 1- day(3) (0) 2023.01.02 [TIL] 멋사 AI스쿨 4일차 파이썬 기초 1- day(2) (0) 2023.01.02