TIL 11 | For & While Loops
1.For構文
For Loops(for 구문)
は、list、tuple、dictionaryなど、ユーザが一度に必要な論理を実行するのに役立つ.1)For構文
for element in list:
do_something_with_element
for文は、リスト内の要素の数と同じ文に属するコードを実行し、反復と呼ばれます.たとえば、リストに5つの要素がある場合は、5反復と呼ばれます.Break
文法で最後まで行いたくない場合、途中で止めたい場合は
break
を使用します.break
文が実行されると、次の反復に進むことなくfor文が終了します.continue
break
と同様にfor構文を完全に終了したくありませんが、次の反復を続行する場合はcontinue
を使用します.2)For構文の重複
numbers1 = [1, 2, 3, 4, 5]
numbers2 = [10, 20, 30, 40, 50]
for num1 in numbers1:
for num2 in numbers2:
print(f"{num1}*{num2} == {num1 * num2}")
3)for構文の例
my_list = [1, 2, 3, 4, 5, 1, 2, 3, 7, 9, 9, 7]
dic = {}
for element in my_list:
if element not in dic:
dic[element] = 1
elif element in dic:
dic[element] += 1
for i in dic:
if dic[i] == 1:
print(i) # 결과: 4, 5
str_list = []
mission_str = "wecode"
for i in mission_str: # 문자열에서도 for 구문 이용해 한글자씩 추출 가능
str_list.append(i)
return str_list
2. Range
コードは、繰り返し文で複数回実行できます.
range
は、開始条件、終了条件、およびステップを書き込むことができます(オプション).for in range(start_value, end_value, step)
Range
(範囲関数)リストmy_list = []
for i in range(0,5):
my_list.append(i) # 결과: [0, 1, 2, 3, 4]
|使用Range
(範囲関数)リストに1~9個の奇数my_list = []
for i in range(1,10,2) # range(start_value, end_value, step)
my_list.append(i) # 결과: [1,3,5,7,9]
Range
(範囲関数)完了リスト要素の合計戻りmy_list = [2,3,4,5,6]
sum = 0
for i in my_list:
sum += i
return sum
3. While Loops
特定の条件文が真の日数でコードブロックを繰り返し実行する構文
while <조건문> # while 구문
수행할 문장
文法と同様に、while文にもbreakとcontinueがあります.
number = 0
while number <= 10: # number가 10 이하 = True
if number == 9: # 조건문 1) number가 9면 break
break
elif number <= 5: # 조건문 2) number가 5 이하인 경우 number에서 1씩 계속 더함
number += 1
continue # 결과: 1, 2, 3, 4, 5, 6
else: # 조건문 3) 조건문 1,2에 해당하지 않는 경우 해당 number 출력
print(number) # 결과: 6,7,8
number += 1
Pythonのwhile文はif文のelseに似たelse文を追加できます.
whileの条件文がfalseの場合、構文のelse文もif文のように実行されます.
number = 0
while number <= 10:
print(number)
number += 1
else:
print(f"while 문이 끝나고 난 후 의 number : {number}")
결과: 0
1
2
3
4
5
6
7
8
9
10
while 문이 끝나고 난 후 의 number : 11
整数(整数)パラメータ値を持つ関数を実装します.関数は、パラメータ値が1以外の最小数の整数を返さなければなりません.
def find_smallest_integer_divisor(numb):
a = 2
while a > 1:
if numb % a != 0:
a += 1
else:
return a
4. Looping Dictionary
listと同様に、dictionaryは
for 구문
を使用して重複する論理を実行することもできる.dictionaryはlistとは異なり、各要素は
key
およびvalue
からなるため、dictionaryを使用するfor文では、各要素のkey
のみが返される.非キー
value
値ループを使用します.value
値を使用してfor構文を実行values 함수
key
とvalue
が同時にループする方法|使用
key
およびvalue
同時実行for構文items 함수
Dictionaryのitems関数はkeyとvalueをtuple
に返します.dictionaryに戻って、inputのリスト内の各要素(要素)がリストに何回表示されるかを理解します
def get_occurrence_count(my_list):
dic = {}
for i in my_list:
if i not in dic:
dic[i] = 1
elif i in dic:
dic[i] += 1
return dic
5. Complex Dictionary
1) List of DIctionaries
複数のdictionaryをlistにマージして情報を表現する方法により、for構文は各dictionaryを読みやすくし、必要な論理を実行することができる.
bts_members = [
{
"실명" : "김남준",
"가명" : "RM",
"생년월일" : "1994년 9월 12일"
},
{
"실명" : "김석진",
"가명" : "진",
"생년월일" : "1992년 12월 4일"
}
]
2)ネストされたパーティションが重なる
Dictionaryのdictionaryネストでは、必要なデータをより効率的に表現できます.
bts_members = {
"RM" : {
"실명" : "김남준",
"생년월일" : "1994년 9월 12일"
},
"진" : {
"실명" : "김석진",
"생년월일" : "1992년 12월 4일"
}
}
print(bts_members["RM"]["생년월일"])
Reference
この問題について(TIL 11 | For & While Loops), 我々は、より多くの情報をここで見つけました https://velog.io/@hjulee12/TIL-11-For-While-Loopsテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol