본문 바로가기
Programming Language/Python

[파이썬] DAY2 반복문

by 9루트 2022. 1. 17.

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 참고

 

 

입학 코딩테스트 리뷰

https://colab.research.google.com/drive/1IhbWKxro6ynm9aI9jXbACuHiAeBO4kEv?hl=ko#scrollTo=evMOptiQ7Gmq 

 

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까지 가능, 증감식을 넣을 수 있다.

 

 

 

'Programming Language > Python' 카테고리의 다른 글

[파이썬] DAY3 함수  (0) 2022.01.18
[파이썬] DAY3 리스트(열거형) & 튜플 & 딕셔너리  (0) 2022.01.18
[파이썬] DAY2 리스트  (0) 2022.01.17
[파이썬] DAY2 지난 시간 복습  (0) 2022.01.17
파이썬 DAY1  (0) 2022.01.14