본문 바로가기

스터디

초보자를 위한 파이썬 300제 오답노트 | 분기문 | 반복문

1. 사용자로부터 입력 받은 시간이 정각인지 판별하라.

time = input('현재시간: ')

if time[-2:] == '00' :
	print('정각')
else :
	print('정각이 아닙니다.')

2. 아래와 같이 리스트의 데이터를 출력하라. 단, for문과 range문을 사용하라.

price_list = [32100, 32150, 32000, 32500]

32100

32150

32000

32500

for i in range(4) :
	print(price_list[i])

3. 아래와 같이 리스트의 데이터를 출력하라. 단, for문과 range문을 사용하라.

price_list = [32100, 32150, 32000, 32500]

0 32100

1 32150

2 32000

3 32500

for i in range(4) : # 0,1,2,3
	print(i, price_list[i])

4. 아래와 같이 리스트의 데이터를 출력하라. 단, for문과 range문을 사용하라.

3 32100

2 32150

1 32000

0 32500

for i in range(4) :
	pritn(3-i, price_list[i])

5. my_list를 아래와 같이 출력하라.

my_list = ["가", "나", "다", "라"]

가 나

나 다

다 라

for i in range(3) : # 0,1,2
	print(my_list[i], my_list[i+1]) # my_list[i+1] -> 안 될 줄 알았는데 됨

6. 반복문과 range 함수를 사용해서 my_list를 아래와 같이 출력하라.

my_list = ["가", "나", "다", "라"]

라 다

다 나

나 가

for i in range(3,0,-1) : # 역순도 왼쪽->오른쪽 순서로 작성
	print(my_list[i], my_list[i-1])

7. 리스트에 5일간의 저가, 고가 정보가 저장돼 있다. 고가와 저가의 차를 변동폭이라고 정의할 때, low, high 두 개의 리스트를 사용해서 5일간의 변동폭을 volatility 리스트에 저장하라.

low_prices = [100, 200, 400, 800, 1000]

high_prices = [150, 300, 430, 880, 1000]

volatility = [ ]

for i in range(5) :
	변동폭 = high_prices[i] - low_prices[i]
	volatility.append(변동폭) # 빈 리스트 만들어주고 만든 값 추가해주기
    
print(volatility)

8. 리스트에 저장된 데이터를 아래와 같이 출력하라.

apart = [ [101, 102], [201, 202], [301, 302] ]

101 호

102 호

201 호

202 호

301 호

302 호

apart = [ [101, 102],
          [201, 202],
          [301, 302] ]

for 층 in apart :
    for 집 in 층 :
        print(집,"호")
        
# 이차원 리스트가 있을 때, 각각 변수로 지정할 수 있다.

9. 리스트에 저장된 데이터를 아래와 같이 출력하라.

301 호

302 호

201 호

202 호

101 호

102 호

apart = [ [101, 102], #1층
          [201, 202], #2층
          [301, 302] ] #3층

for 층 in apart[::-1] : # 슬라이싱 활용하여 역순 노출
    for 집 in 층 :
        print(집, '호')

10. data에는 매수한 종목들의 OHLC (open/high/low/close) 가격 정보가 바인딩 되어있다.

data = [ [ 2000, 3050, 2050, 1980], [ 7500, 2050, 2050, 1980], [15450, 15050, 15550, 14900] ]

수수료를 0.014 %로 가정할 때, 각 가격에 수수료를 포함한 가격을 한라인에 하나씩 출력하라.

data = [
    [ 2000,  3050,  2050,  1980],
    [ 7500,  2050,  2050,  1980],
    [15450, 15050, 15550, 14900]
]

for a in data :
    for b in a :
        print(b + (b * 0.014 * 0.01)) # %는 0.01 곱해주기