Python(Python)繰り返し文
1.繰り返し実行するためのfor文
文脈
-リスト、凡例、写真、文字列などのオブジェクトアイテムを巡回し、特定の操作を繰り返します.
クエリー構文
for 변수 in 순회할 객체: # 순회할 객체의 첫번째 항목부터 마지막 항목까지 차례로 변수에 대입
명령문1
명령문2
コードは1行1行作成できますが、コードには多くの重複が発生し、変更が発生すると多くの変更が発生します.→コードの重複部分を見つけて、重複文で処理する文に変えて解決!
dan = int(input("단을 입력하세요: "))
for i in (1,2,3,4,5,6,7,8,9):
print("{0} x {1} = {2:>2}".format(dan, i, dan * i)) # >2 정렬의 방향을 우측으로 하고 자릿수는 2자리로 함
dan = int(input("단을 입력하세요: "))
for i in range(1, 10, 1):
print("{0} x {1} = {2:>2}".format(dan, i, dan * i)) # 위 코드와 동일함.
-オブジェクトのコードを生成
1)第1パラメータ値は範囲内に含まれ、第2パラメータとして渡される値は範囲内に含まれない
2)2番目のパラメータは省略できません.1番目と3番目のパラメータは省略できます.
3)パラメータを省略する場合、1番目のパラメータのデフォルト値は0、3番目のパラメータのデフォルト値は1
1 range(0, 10, 1) # 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
2 range(10, 1) # 첫 번째(0) 인자 생략
3 range(10) # 첫 번째(0), 세 번째(1) 인자 생략
4 range(1, 10, 2) # 1, 3, 5, 7, 9
5 range(10, -1, -2) # 10, 8, 6, 4, 2, 0
dogs = {1: "골든리트리버", 2: "진돗개", 3: "보더콜리"}
for key in dogs:
print("{0} : {1}".format(key, dogs[key]))
for key, value in dogs.items(): # <class 'dict_items'> 객체 활용
print("{0} : {1}".format(key, value))
[결과]
1 : 골든리트리버
2 : 진돗개
3 : 보더콜리
str = "Python"
for c in str:
print("{0}".format(c))
[결과]
P
y
t
h
o
n
scores = [100, 95, 88, 98] # 리스트형으로 4개의 점수를 저장
total = 0 # 총점 초기화
for score in scores:
total += score
print("총점: {0}".format(total))
[결과]
총점 : 381
2.重なるfor文
ネストされたfor文
-forドア内のもう一つのforドアの形態
ネストされたfor文構文
-巡回するオブジェクト1に対して重複を実行するアイテム数x巡回するオブジェクト2に対して重複を実行するアイテム数
for 변수1 in 순회할 객체1:
for 변수2 in 순회할 객체2:
명령문1
명령문2
...
dan = range(2, 10) # range 객체로 2~9 정수 값을 항목으로 가짐
num = range(1, 10) # range 객체로 1~9 정수 값을 항목으로 가짐
for i in dan:
for k in num:
print("{0} x {1} = {2:>2}".format(i, k, i * k))
if k == 9: # True일 경우 각 단 사이에 공백 라인을 출력하기 위한 코드
print()
for i in dan:
for k in num:
print("{0} x {1} = {2:>2}".format(i, k, i * k))
print() # 위와 동일한 코드
[결과]
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
3 x 1 = 3
3 x 2 = 6
...
3.繰り返しwhile文の実行
ドア
-bool値を返す条件式の結果によって繰返しが決定されます.条件式はfalse値を返さなければなりません.文の繰返しは停止します.したがって、無限の繰返しを避けることを考慮する必要があります.
while文の構文
while 조건식:
명령문1
명령문2
...
dan = int(input("단을 입력하세요: "))
i = 1
while i < 10: # i가 10일 경우 False를 반환하면서 while문이 종료됨
print("{0} x {1} = {2:>2}".format(i, k, i * k)) # :>2 정렬방향 우측, 자릿수는 2자리
i += 1 # 변수 i에 대해 반복이 일어날 때마다 1씩 증가시키는 문장이 없다면 무한루프에 빠짐
scores = [100, 95, 88, 98] # 리스트형으로 4개의 점수 저장
total = 0 # 총점 변수 초기화
cnt = len(scores)
i = 0 # 첫 번째 항목의 위치(인덱스)를 나타내는 0을 저장
while i < cnt:
total += scores[i]
i += 1
print("총점: {0}.format(total))
[결과]
총점: 381
4.重複を制御するためのブレークポイント、continue文
for文:巡回するオブジェクトの最後の項目に繰り返す
while文:bool値を返す条件式がfalseを返すまで条件式を繰り返します.
break文:繰り返し文を論理的に終了する
continue文:後続のコードをスキップして重複文を実行し続ける場合に使用します.
answer = "" # 변수 answer는 공백 문자열("")로 초기화
while True:
answer = input("명령을 입력하세요.\n'q'를 입력하면 프로그램이 종료됩니다. : ")
if answer == "q":
break # 'q' 입력시 while 문에서 벗어남
print("'{0}'를 입력하셨습니다.".format(answer))
print("프로그램을 종료합니다...")
[결과]
명령을 입력하세요.
'q'를 입력하면 프로그램이 종료됩니다. : q
프로그램을 종료합니다...
answer = ""
while True:
answer = input("명령을 입력하세요.\n'q'를 입력하면 프로그램이 종료됩니다. : ")
if answer == "q":
break
print("'{0}'를 입력하셨습니다.".format(answer))
print("프로그램을 종료합니다...")
[결과]
명령을 입력하세요.
'q'를 입력하면 프로그램이 종료됩니다. : a
'a'를 입력하셨습니다.
-リストオブジェクト(1から10まで格納されたリストオブジェクトの整数、3の倍数を除く)の合計を求めるコード.
numlist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
total = 0 # 총합을 저장할 변수 초기화
for n in numlist:
if n % 3 == 0: # n의 값이 3의 배수인지 검사하기 위해 나머지(%) 연사자 사용
continue # n의 값이 3의 배수일 때 : 나머지 블록은 건너뛰고 for 문으로 제어를 옮김
total += n # n의 값이 3의 배수가 아닐 때 : 변수 total에 값을 누적
print("3의 배수를 제외한 총합: {0}".format(total))
[결과]
3의 배수를 제외한 총합: 37
5.forとwhile文によるプログラム作成
SW Expert Academy https://swexpertacademy.com/
Reference
この問題について(Python(Python)繰り返し文), 我々は、より多くの情報をここで見つけました https://velog.io/@yb_engineer/파이썬Python반복문テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol