Day5
Loop는 같은 코드 라인을 여러번 실행하게 해줍니다.
for문은 단일문만 실행하는 것에 제한되지 않았고 목록에 있는 항목의 이름을 출력할 필요가 없습니다.
for문안에 있는 코드는 여러번 실행할 수 있습니다.
순서대로 리스트 각각의 항목에 변수 이름을 할당합니다. 그리고 for문 안에서 콜론 다음에 들여쓰기 후에 항목 각각에 대한 임의 변수로 무언가를 할 수 있습니다.
for문(코드 대부분)에서 들여쓰기가 중요합니다. 이유는 들여쓰기를 사용해서 해당 반복문, 기타등의 코드에 해당한다고 컴퓨터에게 알려주는 것이기 때문입니다.
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(fruit)
print(fruit + " pie")
print(fruits)
// 위 print문들은 for문안에 있고 fruits list안에 아이템이 총 3개가 있으므로 print문은 각각 3번씩 출력이됨
print(fruits) / for문 밖에 있어서 한번만 출력
Python에는 sum() 함수가 있는데, 리스트를 포함한 모든 일관성 있는(Iterable) 데이터 유형을 인자로 넣을 수 있습니다.
# Highest Score
student_score = [150, 142, 185, 120, 171, 184, 149, 24, 59, 63, 199, 78, 65, 89, 55, 91, 64, 89]
// sum()을 사용해서 간단하게 total계산
total_score = sum(student_score)
print(total_score)
Range함수는 python에서 일정한 범위의 정수 시퀀스를 생성하는 내장 함수입니다. 주로 반복문에서 정해진 횟수만큼 반복할 때 사용됩니다.
for number in range(a, b):
print(number)
range함수를 사용해서 숫자를 1~10까지 출력을 하면 아래와 같습니다
for number in range(1, 10): // 2개의 인자 입력
print(number)

출력 결과를 확인해보니 1~9까지만 출력되었고 10은 출력이 안되었는데요
2개의 인자에서 앞의 인자는 시작값 뒤의 인자는 끝값인데 여기시 끝값은 STOP을 의미합니다. 그러니까 간단하게 끝값을 지정을 하고나서 끝값에 도달을 하게 된다면 실행은 중지된다는 것입니다.
// range함수 사용 방법에 대해서 배웠는데요 추가로 증가값을 포함할 수 있습니다.
for number in range(1, 11, 3):
print(number)
출력 결과:
1
4
7
10
1: 시작값
11: 끝값(stop)
3: 증가값
range(시작, 끝, 증가) 형태로 시작값부터 끝값 -1까지 스텝만큼 증가하여 반복
for문을 사용해서 1~100까지의 숫자를 더하기
total = 0
for number in range(1, 101):
total += number
print(total)
# Create a Password Generator Project
import random
letters = [
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'
]
numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
symbols = ['!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '-', '_', '=', '+']
print("Welcome to the PyPassword Generator!")
nr_letters = int(input("How many letters would you like to generate?\n"))
nr_numbers = int(input("How many numbers would you like?\n"))
nr_symbols = int(input("How many symbols would you like?\n"))
# Easy
for i in range(1):
password = ""
for j in range(nr_letters):
letter = random.choice(letters)
password += letter
for j in range(nr_numbers):
number = random.choice(numbers)
password += number
for j in range(nr_symbols):
symbol = random.choice(symbols)
password += symbol
print(password)
#Hard
for i in range(1):
password = ""
for j in range(nr_letters):
letter = random.choice(letters)
password += letter
for j in range(nr_numbers):
number = random.choice(numbers)
password += number
for j in range(nr_symbols):
symbol = random.choice(symbols)
password += symbol
password_list = list(password)
random.shuffle(password_list)
password = "".join(password_list)
print(password)