[파이썬] DAY2 반복문
1. for문
중첩 반복문
문제: 00부터 01, 02, ... 99까지 출력되도록 중첩 for문 사용하여 쓰기
for i in range(10):
for j in range(10):
print(i,j)
내가 푼 풀이
친구가 푼 풀이
for i in range(10):
for j in range(10):
print(str(i)+str(j))
+가 연결 연산자로 바뀐다.
print()에서 +는 뛰어쓰기 공백 없이 연결되고 , 는 뛰어쓰기 공백을 포함하여 연결된다. |
print()의 다양한 옵션 1) sep="" , 에 넣을 문자를 지정 2) end="" 줄바꿈 없이 출력문자 뒤에 붙을 내용을 지정 3) format 포맷을 통해 삽입할 부분을 순서에 맞게 {0} {1} {2}..... 로 넣어주고, .format(값1, 값2, 값3)을 넣어주면 순서에 따라 알아서 삽입되어 출력된다. 위 코드에서는 {0}에 10이 들어가고, {1}에 31이라는 숫자가 들어갔다. print("{0}월{1}일 입니다.".format(10,31)) 출력 >> 10월 31일 ㅣ빈다. 출력문 부분에 %s : 문자열 , %d : 정수 , %f : 실수 로 삽입될 부분을 지정하고, 뒤에 %(값1, 값2, 값3)의 형태로 붙여주면 된다. 데이터 형태를 미리 지정해야하므로 format보다 까다롭다. 그리고 출력문과 %(값) 사이에 콤마가 들어가지 않는다. 4) escape 특수한 경우에, 파이썬 문법을 escape(탈출)하여 출력할 수 있도록 도와주는 문자들이다. 예를들어서 "를 출력하고 싶을때, 또는 역슬래시 \를 출력하고 싶을때 사용하면 된다. \n : 줄바꿈 \t : 탭(TAP) \\ : '\' 출력 \' : 작은따옴표 출력 \" : 큰따옴표 출력 \b : 백스페이스 https://infinitt.tistory.com/11 참고 |
입학 코딩테스트 리뷰
Google Colaboratory Notebook
Run, share, and edit Python notebooks
colab.research.google.com
※ 코드에 주석을 100줄 이상 달게되면 코드가 돌아가지 않을 수 있음
for문은 순서대로 데이터가 되어있지 않아도 사용할 수 있다.
그러나 dict, set은 for문으로 추출하는 방식이 인덱스가 아닌 다른 방법을 쓴다.(추후 배움)
2. while문
지정된 조건에 도달하면 다음 코드로 넘어가도록 하는 기능
while 조건:
break
continue
for문에서 무한 루프가 가능하다.
중복 while 가능
C와 달리 do while은 없다.
대신 아래 처럼 if break 를 넣어 비슷하게 코드를 구현할 수 있다.
i = 0
while i <= 10:
print(i)
i += 1
if i == 5:
break
else는 while문이 정상적으로 끝까지 진행되었는지 확인용
i = 0
while i <= 10:
x = 10
print(i, end = " ")
i += 1
else:
del x
print()
print(i)
print(x)
x가 while문에 안에 선언된 변수임에도 불구하고 파이썬은 객체의 특성으로 del x을 해줘야 없어진다.
while 과 do while 문 차이
do while은 먼저 한번 실행하고 루프문을 돌린다.
무한루프를 탈출하기 위해서는 break 뿐 아니라 bool 값으로 나올 수 있다.
run = True
while run:
run = False
else:
print("동작")
2. random()
random(): 하나의 상자, import: 책상 위로 사물함에 있는 random가방을 가지고 옴
random가방에 있는 randint노트북을 쓰고 싶음
import random
print(random.randint(0, 10))
1) 외부 모듈(random)을 통째로 가져오고 싶을 때
가방(random)을 가져오지 않고 노트북(randint)만 가져오고 싶음.
from random import randint
print(randint(0,10))
2) 아예 가방 내부 물건을 쏟아냄
가방에 있는 모든 메소드를 쓸 수 있음.
from random import*
print(randint(0,10))
여러 가지 랜덤함수 종류
print(randint(1, 10)) #1부터 10까지 가능
print(randrange(1, 10)) #1부터 9까지 가능, 증감식을 넣을 수 있다.