numbers = [2, 3, 5, 7, 11, 13]
names = ["윤수", "혜린", "태호", "영훈"]
numbers = [2, 3, 5, 7, 11, 13]
names = ["윤수", "혜린", "태호", "영훈"]
print(names[1]) # 0부터 시작해서 1이면 -> "혜린"
num_1 = numbers[1] # 변수에 값 지정함
num_3 = numbers[3]
print(num_1 + num_3) # 10
numbers = [2, 3, 5, 7, 11, 13]
# -4 , -3 , -2 , -1
names = ["윤수", "혜린", "태호", "영훈"]
# 0 , 1 , 2 , 3
print(names[-1])
print(names[-2])
numbers = [2, 3, 5, 7, 11, 13]
names = ["윤수", "혜린", "태호", "영훈"]
print(numbers[0:4]) # 인덱스 0부터 3까지 자르는 것
print(numbers[2:]) # 지정하지 않으면 마지막까지
print(numbers[:4]) # 처음부터 3까지
[2, 3, 5, 7]
[5, 7, 11, 13]
[2, 3, 5, 7]
numbers = [2, 3, 5, 7, 11, 13]
names = ["윤수", "혜린", "태호", "영훈"]
numbers[0] = 7 # [0]인 2의 값을 7으로 변경
print(numbers) # [7, 3, 5, 7, 11, 13]으로 변경되어 출력
: 리스트에 몇개의 값이 있는 지 알고 싶을때
numbers = []
print(len(numbers)) # 값이 없으므로 0
: 리스트에 값을 추가하고 싶을때, 가장 오른쪽에 값을 추가해줌
numbers = []
numbers.append(5)
numbers.append(8) # 가장 오른쪽에 값을 추가해준다.
print(numbers) # [5, 8]
print(len(numbers)) # 2
:원하는 위치에 값을 삽입하는 방법
counts = [2, 3, 5, 7 , 11, 13]
counts.insert(4, 37) # 4자리에 값 37을 넣을거야
print(counts) # [2, 3, 5, 7, 37, 11, 13]
: 값 삭제하기
counts = [2, 3, 5, 7 , 11, 13]
del count[3]
print(counts) # [2, 3, 5, 11, 13]
# 오름차순
new_list = sorted(numbers)
print(new_list)
# 내림차순
new_list = sorted(numbers, reverse=True)
print(new_list)
print(numbers) # sorted는 기존의 함수를 건들이지 않는다.
[2, 3, 5, 7, 11, 13, 17, 19]
[19, 17, 13, 11, 7, 5, 3, 2]
[19, 13, 2, 5, 3, 11, 7, 17]
# 오름차순
numbers.sort() # numbers 리스트 정렬 완료
print(numbers)
# 내림차순
numbers.sort(reverse=True)
print(numbers)
[2, 3, 5, 7, 11, 13, 17, 19]
[19, 17, 13, 11, 7, 5, 3, 2]
# sorted : 기존 리스트는 건드리지 않고,정렬된 새로운 리스트를 리턴
# srot : 아무것도 리턴하지 않고, 기존 리스트를 정렬
<나의 답안>
greetings = ["안녕", "니하오", "곤니찌와", "올라", "싸와디캅", "헬로", "봉주르"]
i = 0
while i<=6:
print(greetings[i])
i += 1
<모범답안>
i = 0
while i < len(greetings):
print(greetings[i])
i += 1
*6 값이라는 고정값대신 len(greetings)
같은 일반화된 방식으로 쓰면, 더 안정적이고 확장성 있는 코드가 됩니다.
<나의 답안>
# 화씨 온도에서 섭씨 온도로 바꿔 주는 함수
def fahrenheit_to_celsius(fahrenheit):
c = round(((fahrenheit - 32) *5 ) / 9, 1)
return(c)
temperature_list = [40, 15, 32, 64, -4, 11]
print("화씨 온도 리스트: {}".format(temperature_list)) # 화씨 온도 출력
# 리스트의 값들을 화씨에서 섭씨로 변환하는 코드
i = 0
while i < len(temperature_list):
temperature_list[i] = fahrenheit_to_celsius(temperature_list[i])
i += 1
print("섭씨 온도 리스트: {}".format(temperature_list)) # 섭씨 온도 출력
화씨 온도 리스트: [40, 15, 32, 64, -4, 11]
섭씨 온도 리스트: [4.4, -9.4, 0.0, 17.8, -20.0, -11.7]
<모범 답안>
# 화씨 온도에서 섭씨 온도로 바꿔 주는 함수
def fahrenheit_to_celsius(fahrenheit):
return (fahrenheit - 32) * 5 / 9
temperature_list = [40, 15, 32, 64, -4, 11]
print("화씨 온도 리스트: {}".format(temperature_list)) # 화씨 온도 출력
# 리스트의 값들을 화씨에서 섭씨로 변환하는 코드
i = 0
while i < len(temperature_list):
temperature_list[i] = round(fahrenheit_to_celsius(temperature_list[i]), 1)
i += 1
print("섭씨 온도 리스트: {}".format(temperature_list)) # 섭씨 온도 출력
화씨 온도 리스트: [40, 15, 32, 64, -4, 11]
섭씨 온도 리스트: [4.4, -9.4, 0.0, 17.8, -20.0, -11.7]
*함수에 굳이 변수 안쓰고 return값으로 받기, round 더 자연스럽게 쓰기
<나의 답안> = <모범 답안과 동일 !! >
# 원화(₩)에서 달러($)로 변환하는 함수
def krw_to_usd(krw):
return 0.001 * krw
# 달러($)에서 엔화(¥)로 변환하는 함수
def usd_to_jpy(usd):
return (1000/8) * usd
prices = [34000, 13000, 5000, 21000, 1000, 2000, 8000, 3000]
print("한국 화폐: " + str(prices)) # 원화(₩)로 나열
# prices를 원화(₩)에서 달러($)로 변환하기
i = 0
while i < len(prices):
prices[i] = krw_to_usd(prices[i])
i += 1
print("미국 화폐: " + str(prices)) # 달러($)로 나열
# prices를 달러($)에서 엔화(¥)으로 변환하기
i = 0
while i < len(prices):
prices[i] = usd_to_jpy(prices[i])
i += 1
print("일본 화폐: " + str(prices)) # 엔화(¥)으로 나열
한국 화폐: [34000, 13000, 5000, 21000, 1000, 2000, 8000, 3000]
미국 화폐: [34.0, 13.0, 5.0, 21.0, 1.0, 2.0, 8.0, 3.0]
일본 화폐: [4250.0, 1625.0, 625.0, 2625.0, 125.0, 250.0, 1000.0, 375.0]
<나의 답안>
# 빈 리스트 만들기
numbers = []
print(numbers)
# numbers에 값들 추가
numbers.append(1)
numbers.append(7)
numbers.append(3)
numbers.append(6)
numbers.append(5)
numbers.append(2)
numbers.append(13)
numbers.append(14)
print(numbers)
# numbers에서 홀수 제거
i = 0
while i < len(numbers):
if numbers[i] % 2 == 1:
del numbers[i]
i += 1
print(numbers)
# numbers의 인덱스 0 자리에 20이라는 값 삽입
numbers.insert(0, 20)
print(numbers)
# numbers를 정렬해서 출력
numbers.sort()
print(numbers)
<모범 답안>
# 빈 리스트 만들기
numbers = []
print(numbers)
# numbers에 값들 추가
numbers.append(1)
numbers.append(7)
numbers.append(3)
numbers.append(6)
numbers.append(5)
numbers.append(2)
numbers.append(13)
numbers.append(14)
print(numbers)
# numbers에서 홀수 제거
i = 0
while i < len(numbers):
if numbers[i] % 2 == 1:
del numbers[i]
else: # 홀수인 요소를 제거하고 나서는 i를 늘리면 안 됨
i += 1 # i를 늘리면 요소 하나를 검토하지 않고 건너뛰게 됩니다..
print(numbers)
# numbers의 인덱스 0 자리에 20이라는 값 삽입
numbers.insert(0, 20)
print(numbers)
# numbers를 정렬해서 출력
numbers.sort()
print(numbers)
# value가 some_list의 요소인지 확인
def in_list(some_list, value): # (리스트명, 찾는 값)
i = 0
while i < len(some_list):
# some_list에서 value를 찾으면 True를 리턴
if some_list[i] == value:
return True
i = i + 1
# 만약 some_list에서 value를 발견하지 못했으면 False를 리턴
return False
# 테스트
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(in_list(primes, 7))
print(in_list(primes, 12))
True
False
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(7 in primes) # 찾는 값 in 리스트명
print(12 in primes)
True
False
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(7 not in primes)
print(12 not in primes)
False
True
# 세 번의 시험을 보는 수업
grades = [[62, 75, 77], [78, 81, 86], [85, 91, 89]]
# 첫 번째 학생의 성적
print(grades[0])
# 세 번째 학생의 성적
print(grades[2])
# 첫 번째 학생의 첫 번째 시험 성적
print(grades[0][0])
# 세 번째 학생의 두 번째 시험 성적
print(grades[2][1])
# 첫 번째 시험의 평균
print((grades[0][0] + grades[1][0] + grades[2][0]) / 3)
[62, 75, 77]
[85, 91, 89]
62
91
75.0
: some_list.reverse()
는 some_list
의 원소들을 뒤집어진 순서로 배치
numbers = [5, 3, 7, 1]
numbers.reverse()
print(numbers)
[1, 7, 3, 5]
: me_list.index(x)
는some_list
에서 x
의 값을 갖고 있는 원소의 인덱스를 리턴
members = ["영훈", "윤수", "태호", "혜린"]
print(members.index("윤수"))
print(members.index("태호"))
1
2