728x90
# 다음 소수점 둘째 자리 이하 버림 후 출력하세요
a = 4.17
"%.1f"%a
int(a*10)/10
4.2
# 문자열에서 각 단어를 한 라인에 하나씩 출력하세요????
string = "국어 영어 수학 과학 경제 지리 물리 화학 생물"
print(string.replace(" ","\n" ))
국어
영어
수학
과학
경제
지리
물리
화학
생물
# 슬라이싱을 사용해서 홀수만 출력하세요 두번째 :는 증감폭을 결정한다.
nums = [1,2,3,4,5,6,7,8,9,10]
nums[::2]
[1, 3, 5, 7, 9]
# 슬라이싱을 사용해서 짝수만 출력하세요 두번째 :는 증감폭을 결정한다.
nums = [1,2,3,4,5,6,7,8,9,10]
nums[1::2]
[2, 4, 6, 8, 10]
# 이름과 가격을 저장하는 가격 딕셔너리, 이름과 제고를 저장하는 제고 딕셔너리를 각각 정의하세요
price = {"메로나": 1000, "폴라포": 1200}
a = {"메로나":10,"폴라포":3}
price
a
{'메로나': 1000, '폴라포': 1200}
{'메로나': 10, '폴라포': 3}
# 앞서 정의한 두 딕셔너리를 다음과 같이 출력하세요
price = {"메로나": 1000, "폴라포": 1200}
a = {"메로나":"10","폴라포":"3"}
print("메로나",str(price.get("메로나"))+"원 재고", a.get("폴라포")+"개")
print("메로나 "+a["메로나"]+"원 재고 "+a["폴라포"]+"개")
메로나 1000원 재고 3개
메로나 10원 재고 3개
# 아이스크림 이름을 키값으로, (가격, 재고) 리스트를 딕셔너리의 값으로 저장하세요
ice = {"메로나":[300,20], "비비빅":[400,3], "죠스바":[250,100]}
ice
{'메로나': [300, 20], '비비빅': [400, 3], '죠스바': [250, 100]}
# 앞서 정의한 딕셔너리엣 메로나의 가격을 출력하세요
ice = {"메로나":[300,20], "비비빅":[400,3], "죠스바":[250,100]}
print(str(ice.get("메로나")[0])+"원")
300원
# 앞서 정의한 딕셔너리에 아래 데이터를 추가하세요
ice = {"메로나":[300,20], "비비빅":[400,3], "죠스바":[250,100]}
ice["월드콘"] = [500,7]
ice
{'메로나': [300, 20], '비비빅': [400, 3], '죠스바': [250, 100], '월드콘': [500, 7]}
#다음의 딕셔너리에서 key값으로만 구성된 리스트를 생성하세요
ice = {"메로나":[300,20], "비비빅":[400,3], "죠스바":[250,100]}
list(ice.keys())
['메로나', '비비빅', '죠스바']
제어문과 함수
1) 조건문
- if문을 만들 때
if 문에 속하는 모든 문장에 들여쓰기
탭(tap)
공백(spacebar)
콜론(:)을 잊지 말자.
ex) money =True
if money:
print("택시를 타고 가라")
else:
print("걸어 가라")
택시를 타고 가라
| 비교연산자 | 설명 |
| x < y | x가 y보다 작다 |
| x > y | x가 y보다 크다 |
| x == y | x와 y가 같다 |
| x != y | x와 y가 같지 않다 |
| x >= y | x가 y보다 크거나 같다 |
| x <=y | x가 y보다 작거나 같다. |
#3000원 이상의 돈을 가지고 있으면 택시를 타고 그렇지 않으면 걸어가는 조건문을 만들어보세요
money = 2500
if money >= 3000:
print("택시를 타라")
else:
print("걸어가라")
걸어가라
| 연산자 | 설명 |
| x or y | x와 y 둘 중에 하나만 참이어도 참 |
| x and y | x와 y 모두가참이어야 참 |
| not x | x가 거짓이면 참 |
| in | not in |
| x in 리스트 | x not in 리스트 |
| x in 튜플 | x not in 튜플 |
| x in 문자열 | x not in 문자열 |
# 3000원 이상의 돈을 가지고 있거나 카드를 가지고 있으면 택시를 타고 그렇지 않으면 걸어가는 조건문을 만들어보세요
money = 3000
card = True
if money >= 3000 or card:
print("택시타라")
else:
print("걸어가")
택시타라
# 가방에 돈이 있으면 택시를 타고 없으면 걸어가는 조건문을 만들어보세요
bag = ["money", ]
if "money" in bag:
print("택시타")
else:
print("걸어가")
택시타
# 주머니에 카드가 없다면 걸어가고, 있다면 버스를 타고 가라는 문장을 조건문으로 만들어보세요
주머니 = ["money", ""]
if "card" not in 주머니:
print("걸어가")
else:
print("버스타")
걸어가
- else if 문
ex)
pocket = ['cellphone']
card = True
if 'money' in pocket:#주머니에 돈이 있으면
print("택시를 타세요")
elif card:#카드에 돈이 있으면
print('버스타')
else: #카드가 없으면
print('걸어가세요')
버스타
# score에 따라 학점을 출력하는 코드를 작성해 보세요
socre = 33
if socre > 80:
print('A')
elif socre > 69:
print('B')
elif socre >40:
print('C')
elif socre > 20:
print('D')
else:
print('E')
D
- 조건부 표현식: 조건문 간단히 쓰기
변수 = 조건문이 참인 경우의 값 if 조건문 else 조건문이 거짓인 경우의 값
score = 70
message = "success" if score >=60 else "failure"
print(message)
success
※ 조건문에서 아무 일도 하지 않게 설정하려면 print 대신에 pass를 쓴다.
2) 반복문: 문장을 반복해서 수행해야 할 경우
- while 반복문
while 조건문:
수행할 문장1
수행할 문장2
...
treeHit = 0
while treeHit < 10:
treeHit = treeHit +1
print('나무를 %d번 찍었습니다.'%treeHit)
if treeHit == 10:
print('나무 넘어갑니다')
나무를 1번 찍었습니다. 나무를 2번 찍었습니다. 나무를 3번 찍었습니다. 나무를 4번 찍었습니다. 나무를 5번 찍었습니다. 나무를 6번 찍었습니다. 나무를 7번 찍었습니다. 나무를 8번 찍었습니다. 나무를 9번 찍었습니다. 나무를 10번 찍었습니다. 나무 넘어갑니다
# 여러가지 선택지 중 하나를 선택해서 입력받는 프로그램을 만들어 보자
prompt = """
1. Add
2. Del
3. List
4. Quit
Enter number: """
number = 0
while number != 4:
print(prompt)
number = int(input())
1. Add 2. Del 3. List 4. Quit
Enter number: 1 1. Add 2. Del 3. List 4.
Quit Enter number: 4
- break 문: 강제로 while 문에서 빠져나오고 싶을 때
coffee = 10
money = 300
while money:
print('돈 받았으니 커피준다')
coffee = coffee -1
print('남은 커피의 양은 %d개 입니다.'%coffee)
if coffee == 0:
print('커피가 다 떨어졌습니다. 판매를 중지합니다')
break
돈 받았으니 커피준다 남은 커피의 양은 9개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 8개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 7개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 6개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 5개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 4개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 3개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 2개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 1개 입니다. 돈 받았으니 커피준다 남은 커피의 양은 0개 입니다. 커피가 다 떨어졌습니다. 판매를 중지합니다
coffee = 10
refund = 0
while True:
money = int(input("돈을 넣어주세요 : "))
if (money > 300) and (coffee > 0):
refund = abs(300 - money)
print('거스름돈:', refund)
coffee -= 1
print('남은 커피 잔 수:', coffee)
if coffee == 0:
print('커피가 매진되었습니다.')
break;
elif (money == 300) and (coffee > 0):
coffee -= 1
print('남은 커피 잔 수:', coffee)
if coffee == 0:
print('커피가 매진되었습니다.')
break;
elif (money < 300) and (coffee > 0):
refund = money
print('거스름돈:', refund)
print('남은 커피 잔 수:', coffee)
돈을 넣어주세요 : 300
남은 커피 잔 수: 9
돈을 넣어주세요 : 200
거스름돈: 200
남은 커피 잔 수: 9
돈을 넣어주세요 : 300
남은 커피 잔 수: 8
돈을 넣어주세요 : 300
남은 커피 잔 수: 7
돈을 넣어주세요 : 300
남은 커피 잔 수: 6
돈을 넣어주세요 : 300
남은 커피 잔 수: 5
돈을 넣어주세요 : 300
남은 커피 잔 수: 4
돈을 넣어주세요 : 300
남은 커피 잔 수: 3
돈을 넣어주세요 : 300
남은 커피 잔 수: 2
돈을 넣어주세요 : 300
남은 커피 잔 수: 1
돈을 넣어주세요 : 300
남은 커피 잔 수: 0
커피가 매진되었습니다.
이건 어렵구나... 이따 다시 연습하자...
- continue 문: while 문의 맨 처음으로 돌아가고 싶은 경우
※ 무한루프에 걸리지 않게 조심하자 while
- for 반복문
test_list = ['one', 'two', 'three']
for i in test_list:
print(i)
one two three
리스트나 튜플, 문자열의 첫 번째 요소부터 마지막 요소까지 차례로 변수에 대입되어 수행할_문장1, 수행할_문장2 등이 수행된다.
# 총 5명의 학생이 시험을 보았는데 시험점수가 60점 이상이면 합격 그렇지 않으면 불합격이다 합격인지 불합격인지 결과를 보여주시오
marks = [90,25,67,45,80]
for i in marks:
if i >= 60:
print("합격")
else:
print("불합격")
합격 불합격 합격 불합격 합격
# 60점 이상인 사람에게는 축하 메세지를 보내고 나머지 사람에게는 아무런 메세지도 전하지 않으려면?
marks = [90,25,67,45,80]
number = 0
for i in marks:
number = number + 1
if i < 60:
continue
else:
print("%d번 당신은 혹시 천재?"% number)
1번 당신은 혹시 천재? 3번 당신은 혹시 천재? 5번 당신은 혹시 천재?
- range()함수: 숫자 리스트를 자동으로 만들어주는, for 문과 함께 자주 쓰이는 함수
marks = [90,25,67,45,80]
for number in range(len(marks)):
if marks[number]<60:
continue
print('%d번 축하염'%(number+1))
1번 축하염
3번 축하염
5번 축하염
3번 축하염
5번 축하염
- 리스트 컴프리헨션 사용하기: 리스트 안에 for 문을 포함하는 것
#표현식 for 항목 in 반복가능객체 (if 조건문)
#리스트 컴프리핸션을 사용하여 구구단의 모든 결과를 아래와 같이 차례대로 'result' 리스트에 담아본다면?
result = [x*y for x in range (2,10)
for y in range (1,10)]
print(result)
2, 4, 6, 8, 10, 12, 14, 16, 18, 3, 6, 9, 12, 15, 18, 21, 24, 27, 4, 8, 12, 16, 20, 24, 28, 32, 36, 5, 10, 15, 20, 25, 30, 35, 40, 45, 6, 12, 18, 24, 30, 36, 42, 48, 54, 7, 14, 21, 28, 35, 42, 49, 56, 63, 8, 16, 24, 32, 40, 48, 56, 64, 72, 9, 18, 27, 36, 45, 54, 63, 72, 81
[ ]
'성동1기 전Z전능 데이터 분석가 과정' 카테고리의 다른 글
| [성동1기 전Z전능 데이터 분석가] 32일차 python 데이터 프레임 (0) | 2023.11.28 |
|---|---|
| [성동1기 전Z전능 데이터 분석가] 32일차 python 기초 - 함수, 패키지 (0) | 2023.11.28 |
| [성동1기 전Z전능 데이터 분석가] 30일차 python 기초 - 자료형 (0) | 2023.11.24 |
| [성동1기 전Z전능 데이터 분석가] 29일차 SQL 프로젝트 보고서 및 발표 후 생각 (0) | 2023.11.23 |
| [성동1기 전Z전능 데이터 분석가] 28일차 SQL 프로젝트 EDA 분석 (0) | 2023.11.23 |