카테고리 없음

while문, if문

즐기는 마인드 2022. 8. 19. 17:29
>>> treeHit = 0
>>> while treeHit < 10:
...     treeHit = treeHit +1 # 0대입 treehit = 1 
...     print("나무를 %d번 찍었습니다." % treeHit) 
...     if treeHit == 10: # 위 반복문을 반복하다 treeHit
...         print("나무 넘어갑니다.")

나무를 1번 찍었습니다. (treeHit  = 0)
나무를 2번 찍었습니다. (treeHit  = 1)
나무를 3번 찍었습니다. (treeHit  = 2)
나무를 4번 찍었습니다.
나무를 5번 찍었습니다.
나무를 6번 찍었습니다.
나무를 7번 찍었습니다.
나무를 8번 찍었습니다.
나무를 9번 찍었습니다.
나무를 10번 찍었습니다. (treeHit  = 9)
나무 넘어갑니다. (treeHit  = 10)

 

prompt = """
1. Add
2. Del
3. List
4. Quit

Enter number: """

number = 0
while number != 4:
    print(prompt)
    number = int(input())
    
4를 입력하기 전까지

1. Add
2. Del
3. List
4. Quit

Enter number: 
창이 반복해서 나옴
a = 0
while a < 10:
    a = a + 1
    if a % 2 == 0: continue # 나누었을 때 나머지가 0이라면 맨 처음 while코드로 돌아간다
    print(a)

a = 0
while a < 10:
    a = a + 1
    if a % 2 == 0:
    	continue # 이렇게 인데 한줄로 쓴 코드임
    print(a)

1
3
5
7
9
test_list = ['one', 'two', 'three'] 
for i in test_list: 
    print(i)
 
# one test_list에 있는 iterable객체 하나씩 소환
# two 
# three
a = [(1,2), (3,4), (5,6)]
for (first, last) in a:
    print(first + last)

# 3 (1,2)--> first = 1, last = 2
# 7
# 11
# marks1.py
marks = [90, 25, 67, 45, 80] #길이 5

number = 0 #에러가 안나도록 미리 선언
for mark in marks: 
    number = number +1 #첫번째 학생을 표현하기 위해
    if mark >= 60: 
        print("%d번 학생은 합격입니다." % number)
    else: 
        print("%d번 학생은 불합격입니다." % number)
# marks2.py 
marks = [90, 25, 67, 45, 80]

number = 0 
for mark in marks: 
    number = number +1 
    if mark < 60:
        continue # 60점 이하 친구들은 무시해버린다
    print("%d번 학생 축하합니다. 합격입니다. " % number)
    
     
    if mark < 60:
        continue # 60점 이하 친구들은 무시해버린다
        -->
    if mark < 60: continue 로도 가능
add = 0  #오류 없도록 미리 선언
for i in range(1, 11):  #(1~10까지)
    add = add + i #1부터 대입 add

print(add) #10까지 반복한 add출력
#marks3.py
marks = [90, 25, 67, 45, 80]
for number in range(len(marks)): # len(marks) = 5, range(5) = range(0,5)  0~4까지 정수
    if marks[number] < 60:  #marks[0] 은 크다 따라서 if문 실행 안하고 바로 프린트
        continue             #marks[1]은 60보다 작으므로 continue만나서 for문으로 다시 감 1스킾 후 number에 2들어감
    print("%d번 학생 축하합니다. 합격입니다." % (number+1))​
for i in range(2,10):        # ①번 for문
    for j in range(1, 10):   # ②번 for문
        print(i*j, end=" ") 
    print('') #줄바꿈 용도인듯

# 2 4 6 8 10 12 14 16 18  # 1번 반복문이 먼저 실행되어 i에 2 대입 이후 2번 반복문 만나 print(i*j) 수행 j in range(1,10)수행 이후 다시 1번 반복문으로 돌아감
# 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
a = [1,2,3,4]
result = [] # 리스트 미리 선언
for num in a:
    result.append(num*3) # 값추가

print(result)
[3, 6, 9, 12]

[표현식 for 항목 in 반복가능객체 if 조건문]

a = [1,2,3,4]
result = [num * 3 for num in a] # 표현식  : num * 3, 항목 : num, 반복 가능 객체(iterable) a(list)
print(result)
[3, 6, 9, 12]

a = [1,2,3,4]
result = [num * 3 for num in a if num % 2 == 0] # 표현식  : num * 3, 항목 : num, 반복 가능 객체(iterable) a(list, 조건문 num % 2 ==0
print(result)
[6, 12]

[표현식 for 항목 in 반복가능객체 if 조건문]

 

>>> result = [x*y for x in range(2,10)
...               for y in range(1,10)] # 표현식 x*y 항목1 : x, 항목2 :y 반복가능객체1 : range(2,10), 반복가능객체2 :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]

[표현식 for 항목1 in 반복가능객체1 if 조건문1
        for 항목2 in 반복가능객체2 if 조건문2
        ...
        for 항목n in 반복가능객체n if 조건문n]