ALLYES
[2022년 청년친화형 기업 ESG지원 사업 - 19] 본문
일시 : 2022.09.29
시간 : 9:00 ~ 18:00
오전/오후 : Python
- 산술 연산자
# 산술 연산자 예제
num1 = 23
num2 = 3
result = num1 / num2
print("더하기 결과 :" ,num1+ num2)
print("빼기 결과 :",num1- num2)
print("곱하기 결과 :",num1* num2)
print("나누기 결과 :",num1/ num2)
print("=============================")
# 문자열 포매팅
print("더하기 결과 :{}".format(num1+num2))
print(f"빼기 결과 : {num1-num2}")
print(f"나누기 결과 : {result}")
- input 함수
- !! input()함수 사용시 입력을 받을 때까지 실행이 일시정지가 되기 때문에 뒷코드가 실행되지 않을 수 있음
- !! input 함수는 기본 자료형이 string이기 때문에 다른 형태의 결과를 얻을려면 형변환이 필요
- 문자를 숫자로 바꾸는 방법
- int(문자열) : 문자열을 정수로 변환
- float(문자열) : 문자열을 실수로 변환
- 예제1
# 정수로 변환
num1 = int(input("정수를 입력하세요 >> "))
# 실수로 변환
num2 = float(input("실수를 입력하세요 >> "))
- 예제2
# 변수 num1과 num2를 키보드로 입력받아서 결과 계산하기
num1 = int(input("정수 입력하세요 >> "))
num2 = int(input("정수 입력하세요 >> "))
print("더하기 결과 :", num1+num2)
print("빼기 결과 :",num1-num2)
print("곱하기 결과 :",num1*num2)
print("나누기 결과 :",num1/num2)
- 예제3
# 산술 연산자 예제
# python, 머신러닝, 딥러닝 점수를 키보드로 입력 받아서 합계와 평균 출력하기
python = int(input("python 점수 입력 >> "))
ml = int(input("머신러닝 점수 입력 >> "))
dl = int(input("딮러닝 점수 입력 >> "))
# 합계
sum1 = python + ml + dl
avg = sum1/3
print("합계", sum1)
print("평균", avg)
# 포매팅
print(f"합계 : {python+ml+dl}")
print(f"평균 : {(python+ml+dl)/3}")
- 문자열 곱하기
# 문자열 곱하기
print("=" * 50)
print("안녕하세요"*2 )
- 지수연산자(**)
# 지수 연산자(**)
num1 = int(input("정수를 입력해주세요 >> "))
power1 = int(input("지수를 입력해주세요 >> "))
print(f"{num1}의 {power1}승은 {num1**power1}입니다.")
- 알고리즘 문제
# 알고리즘 문제
# 초를 입력(input)받아 "00시간 00분 00초" 형태로 출력하기
time = int(input("시간 입력 >> "))
hour = int(time/3600)
minute = int(time%3600/60)
sec = int(time%3600%60)
print(f"{hour}시간 {minute}분 {sec}초")
- 복합 대입 연산자
- 코드를 간결하게 줄일 수 있음.(가독성 향상)
- 값을 누적 시키기 위해 사용함
# 복합 대입 연산자 실습
num = 27
num += 3
num += 3
num += 3
num += 3
num += 3
num += 3
num
치환
- A와 B는 각각 볼펜을 들고있다.
- A는 빨간펜, B는 파란색 펜을 들고 있을 때 들고있는 손만 활용하여 A는 파란색 펜, B는 빨간색 펜을 가질 수 있도록 하려면 어떻게 해야 할까?
# 일반적인 방법
# 저장할 다른 공간을 할당해 전달하고 다시 전달 받음
a = 3
b = 7
c = a
print(a)
print(b)
print(c)
# 파이썬의 치환
a, b = b, a
print(a)
print(b)
- 비교 연산자
a = 3
b = 7
print(a>b)
print(a<=b)
print(a==b)
print(a!=b)
- 삼항연산자 예제1
score = 80
"합격" if score >= 60 else "불합격"
"합격" if score >= 50 else "불합격"
# 키보드로 정수를 입력 받아서 홀수인지 짝수인지 판별하는 알고리즘
num = int(input("정수 입력 : "))
print(f"{num}은 짝수입니다.") if num%2 ==0 else print(f"{num}은 홀수입니다.")
- 삼항연산자 예제2
num1 = int(input("첫 번째 정수 입력 >> "))
num2= int(input("두 번째 정수 입력 >> "))
print(f"두 수의 차 : {num1-num2}") if num1 > num2 else print(f"두 수의 차 : {num2-num1}")
- 조건문
- 개념
- 상황에 따라 실행 흐름을 다르게 하는 문법
- 키워드는 if, elif, else가 있음
- 조건식이 True(참)일 경우 실행문자(들여쓰기 되어있는 공간) 실행
- IF
- 조건식이 True일 경우 실행문장 실행
- if 조건식 :
- 실행문장
- 개념

- 조건문 실습예제
# 조건문 if else 실습 예제
# 조건문을 사용하여 변수 moeny가 10000이상이면 "택시를 탄다"를 출력하고
# 10000미만이면 "버스를 탄다"를 출력하시오.
money = 9000
if money >= 10000:
print("택시를 탄다.")
else:
print("버스를 탄다.")
- 알고리즘 문제
# 알고리즘 문제
# 3과 5의 배수 구하기
# 키보드로 변수 num을 입력받고 num이 3의 배수이면서 5의 배수이면 "3과 5의 배수입니다." 라고 출력하고
# 아니라면 "3과 5의 배수가 아닙니다"를 출력하시오
num = int(input("정수입력 >> "))
if num %3==0 & num%5==0:
print(f"{num}은(는) 3과 5의 배수입니다.")
else:
print(f"{num}은(는) 3과 5의 배수가 아닙니다.")
- 조건문 elif
# 조건문 elif
num1 = int(input("첫 번째 정수 입력 >> "))
num2 = int(input("두 번째 정수 입력 >> "))
if num1 > num2:
print("첫 번째 정수가 더 큽니다.")
elif num1 < num2:
print("두 번째 정수가 더 큽니다.")
else:
print("두 정수가 같습니다.")
- 조건문 elif 예제
# 조건문 elif 실습 예제
# 변수 score에 점수를 입력받아서 학점을 부여
score = int(input("점수 입력 >> "))
if score >= 90:
grade = 'A'
print(f"{score}점은 {grade} 학점 입니다.")
elif score >= 80:
grade = 'B'
print(f"{score}점은 {grade} 학점 입니다.")
elif score >= 70:
grade = 'C'
print(f"{score}점은 {grade} 학점 입니다.")
elif score >= 60:
grade = 'D'
print(f"{score}점은 {grade} 학점 입니다.")
else:
grade = 'F'
print(f"{score}점은 {grade} 학점 입니다.")
- 리스트(list)
- 개념
- 파이썬의 자료구조 형태중 하나
- 순서가 있는 수정가능한 객체의 집합
- 대괄호([]) 로 작성되어지며, 리스트 내부의 값은 콤마( , )으로 구분
- 추가, 수정, 삭제 기능
- 구조
- 리스트명 = [요소1, 요소2, 요소3, ...]
- 인덱싱
- 무엇인가를 가린킨다 의미
- 슬라이싱
- 무엇인가를 잘라낸다 의미
- 개념
list2 = [1,2,3,['a', 'b', 'c']]
# 리스트 인덱싱 --> list2에서 문자 'b'만 인덱싱해오기
list2[3][1]
# 리스트 슬라이싱 --> 리스트[start 인덱스 : end 인덱스(포함x)]
# start 인덱스부터 end 인덱스 바로 전까지 값 반환(start <= x < end)
list3 = [0,1,2,3,4]
list3[1:3]
# 리스트 연산(더하기)
# 리스트는 연산이 불가능하다! -> like 문자열 연산
# 리스트 생성
list4 = [1,2,3]
list5 = [3,4,5,6]
list4+list5
- 리스트 값 추가
- 리스트명.append(값)
- 리스트 맨 뒤에 값 추가하는 함수
- 리스트명.append(값)
# 리스트 생성
list5 =[0,1,2,3,4]
list5.append(5)
list5
# 리스트 값 추가 --> insert() 함수
# 리스트명.insert(인덱스, 값)
# 인덱스 위치에 값 추가
list5.insert(1,2)
list5
- 리스트 값 수정
# 리스트 값 수정
# 리스트 생성
list6 = [0,1,2,3,4]
list6
print("수정 전 :" , list6[1])
list6[1] = 7
print("수정 후 :" , list6[1])
# 범위를 수정
print(list6[2:4], list6[2:3])
list6[2:4] = [7]
list6
- 리스트 값 삭제
# 리스트 값 삭제
# del 키워드 이용
# 리스트 생성
list7 = [0,1,2,3,4,5]
# 단일 인덱스 삭제
del list7[1]
list7
# 범위를 지정해서 슬라이싱 삭제
del list7[1:5]
list7
# remove() : 리스트 값 삭제하는 함수
# 리스트명.remove(값)
list8 = ['a','b','c','d','e']
list8.remove('b')
list8
- 리스트 정렬
- 오름차순 정렬
# 리스트 정렬
# 리스트명.sort()
# 리스트에 있는 값을 오름차순 정렬(오름차순은 기본 값)
# 리스트 생성
list9 = [4,2,14,234,32,99]
list9.sort()
list9
- 역순 정렬
# 리스트 순서 거꾸로 뒤집기
# 리스트명.reverse()
# 리스트에 있는 값을 역순으로 뒤집음
# 리스트 생성
list9 = [4,2,14,234,32,99]
list9.reverse()
list9
- 내림차순 정렬
# 리스트 내림차순 정렬
# sort()와 reverse() 이용
# 리스트에 있는 값을 내림차순으로 정렬
# 리스트 생성
list10 = [4,2,14,234,32,99]
# 1. 오름차순 정렬을 먼저 하자! --> sort()
list10.sort()
list10
# 2. 인덱스 순서 거꾸로 뒤집기 --> revers()
list10.reverse()
list10
리스트 값 위치(인덱스) 반환 및 제거
- 리스트명.index()
- 찾고자 하는 값의 위치(인덱스) 반환
- 리스트명점.pop()
- 마지막 값을 반환 후 리스트에서 제거
# 리스트 생성
list11 = ['a','b','c','d','e','f']
list11.index('c')
list12 = ['a','b','c','d','e','f']
list12.pop()
list12
리스트 값의 개수 확인
- len(리스트명)
- 리스트의 값 개수 반환
len(list12)
튜플
- 파이썬의 자료구조 형태중 하나
- 순서가 있는 집합
- 소활호( () )로 작성되어지며, 튜플의 내부 값은 콤마( , )로 구분
- 인덱스에 위치한 값 반환추가, 수정, 삭제 불가능!
# 튜플 값 추가, 수정, 삭제
# 튜플생성
tuple1 = (0,1,2,3,('a','b','c'),5)
tuple1
리스트와 튜플의 공통점과 차이점
공통점
- 타입과 상관 없이 일련의 요소(인덱스가 있는) 가질 수 있음
- 요소의 순서(인덱스)를 관리한다.차이점
- 리스트는 가변적이며, 튜플은 불변적이다.
- 리스트는 요소가 몇개 들어갈지 명확하지 않을 경우에 사용
- 튜플은 요소 개수를 사전에 명확히 정확히 알고 있을 경우에 사용
# in : 찾고자 하는 값이 포함 되어 있으면 True
# not in : 찾고자 하는 값이 포함되어 있지 않으면 True
str1= '파이썬 최고'
"파이썬" in str1
"파이썬" not in str1
list1 = [77,38,10]
list1
반복문
- 프로그램 내에서 똑같은 명령을 일정 횟수만큼 반복하여 수행하도록 제어하는 명령문
- 반복문 종류는 while문, for문이 있음
- while : 반복 횟수가 명확하지 않을 때 사용
- for : 반복 횟수가 명확할 때 사용
# while문 예제
# while문 사용해서 "파이썬 최고!!"를 13번만 출력
num=0
while(num <= 13):
print("파이썬 최고!!")
num += 1
while문 - break
- 반복문을 나가는 기능
while True:
print("무한루프")
break
number = 1
while True:
print(number)
number += 1
if number > 3:
break'ESG' 카테고리의 다른 글
| [2022년 청년친화형 기업 ESG지원 사업 - 21] (0) | 2022.10.01 |
|---|---|
| [2022년 청년친화형 기업 ESG지원 사업 - 20] (1) | 2022.09.30 |
| [2022년 청년친화형 기업 ESG지원 사업 - 18] (1) | 2022.09.28 |
| [2022년 청년친화형 기업 ESG지원 사업 - 17] (0) | 2022.09.27 |
| [2022년 청년친화형 기업 ESG지원 사업 - 16] (0) | 2022.09.26 |