If, List, For

김상우·2022년 2월 25일
0

Python

목록 보기
2/14
post-thumbnail

완전 기초부터 시작하는 파이썬

if

  • 예제1
a, b = 100, 90

if a > b:
    print("Bigger")
elif a < b:
    print("Smaller")
else:
    print("Same")
  • 결과

    Bigger

  • 예제2
score = 98
if score >= 90 and score < 100:
    print("A")
elif score >= 80 and score < 90:
    print("B")
elif score >= 70 and score < 80:
    print("C")
else:
    print("F")
  • 결과

    A

List

  • 예제1
score_list = [90, 100, 80]
print(score_list, '\n')

print(score_list[0])
print(score_list[1])
print(score_list[2])

print(score_list[-1])
print(score_list[-2])

리스트는 맨 왼쪽에 위치한 주소를 0으로 인덱싱하며, 맨 오른쪽의 주소는 -1로 인덱싱한다.

  • 결과

    [90, 100, 80]

    90
    100
    80
    80
    100

  • 예제2_List Indexing
score_list = [90, 100, 80]
print(score_list, '\n')

score_list[0] = 200
print(score_list, '\n')

score_list[-1] = -20
print(score_list, '\n')

각 주소에 맞게 값을 변환 후 리스트에 저장한다

  • 결과

    [90, 100, 80]

    [200, 100, 80]

    [200, 100, -20]

  • 예제3_List Slicing
score_list = [0, 1, 2, 3, 4, 5, 6, 7]
print(score_list, '\n')

print(score_list[1:5], '\n')
print(score_list[1:1 + 4])

[1:5] : 리스트의 1번 주소부터 5번 주소 직전까지의 데이터를 의미한다.
[1:1 + 4] : [1:5]와 같은 의미이다. -> 1번 주소부터 4개의 데이터를 의미한다.

  • 결과

    [0, 1, 2, 3, 4, 5, 6, 7]

    [1, 2, 3, 4]

    [1, 2, 3, 4]

  • 예제3_List Addition
score_list1 = [90, 10, 50]
score_list2 = [20, 50, 30]

print(score_list1 + score_list2)

단순히 합연산을 실행하게 되면 아래의 결과처럼 붙어서 출력된다.

  • 결과

    [90, 10, 50, 20, 50, 30]

  • 예제4_List Multiplication
score_list1 = [90, 10, 50]
print(score_list1 * 3)

리스트에 곱연산을 실행하게 되면 리스트를 n번만큼 반복하라는 의미와 같으며 결과는 아래와 같이 출력된다.

  • 결과

    [90, 10, 50, 90, 10, 50, 90, 10, 50]

  • 예제4_Length
score_list = [90, 100, 20]

print(len(score_list))

len은 length(길이)를 측정하는 함수로 위 코드에서는 리스트의 길이를 출력한다.

  • 결과

    3

  • 예제5_Append
score_list = [90, 100, 20]
score_list.append(3)
print(score_list, '\n')

score_list.append(4)
print(score_list)

append는 추가의 의미를 가지며 위의 리스트뒤에 .append(n)의 형식으로 사용하면 아래 결과와 같이 출력된다.

  • 결과

    [90, 100, 20, 3]

    [90, 100, 20, 3, 4]

for

  • 예제1
score_list = [90, 100, 40]
for score in score_list:
    print(score)

리스트에 포함된 각 원소에 score라는 이름으로 접근하여 연산 후 하나씩 출력하게된다.
for문을 사용한 코드는

print(score_list[0])
print(score_list[1])
print(score_list[2])

를 사용한 것과 같은 결과를 나타낸다.

  • 결과

    90
    100
    40

예제 1에서 활용한 것으로 각 원소에 10씩 합연산을 추가하면 다음과 같다.

  • 예제1-1
score_list = [90, 100, 40]
for score in score_list:
    print(score + 10)
  • 결과

    100
    110
    50

  • 예제1-2
score_list = [90, 100, 40]

score_sum = 0
for score in score_list:
    score_sum += score

print(score_sum)
print(score_sum / len(score_list))

1-2의 코드는 score_sum이라는 변수를 0으로 저장하고 리스트의 각 원소를 for문의 내용처럼 합을 쌓은 후 출력하는 코드이다. 특히 len을 사용해 숫자들의 평균을 구한 후 출력하게된다.

  • 결과

    230
    76.66666666666667

  • 예제2
score_list = []

for i in range(10):
    score_list.append(i)
    print(score_list, '\n')
    
print(score_list)

비어있는 리스트를 생성 후 0~9까지의 숫자를 append하여 반복문을 실행한다. 그 후 마지막에 생성된 결과를 print를 통해 출력해보면 아래의 결과와 같이 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]의 리스트가 출력된다.
들여쓰기의 결과에 따라 다른 결과가 출력될 수 있으니 주의하자.
맨 마지막 줄에 있는 리스트가 코드에서의 print(score_list)이다.

  • 결과

    [0]

    [0, 1]

    [0, 1, 2]

    [0, 1, 2, 3]

    [0, 1, 2, 3, 4]

    [0, 1, 2, 3, 4, 5]

    [0, 1, 2, 3, 4, 5, 6]

    [0, 1, 2, 3, 4, 5, 6, 7]

    [0, 1, 2, 3, 4, 5, 6, 7, 8]

    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

  • 예제2-1
score_list1 = [10, 20, 30, 40, 50, 60]
score_list2 = [20, 30, 40, 50, 60, 70]

for score_idx in range(len(score_list)):
    print(score_list1[score_idx] + score_list2[score_idx])

Indexing을 활용하여 두개의 리스트의 각 원소를 합한 결과를 출력할 수 있다.

  • 결과

    30
    50
    70
    90
    110
    130

profile
아침엔 운동하고 밤엔 잠을 잔다.

0개의 댓글