Python / 반복문 / while

while

while은 주어진 조건이 참일 동안 작업을 반복하게 하는 구문입니다.

문법

while condition:
    statement
  • condition : 작업을 하기 위한 조건입니다. 참일 동안 반복 작업을 합니다.
  • statement : 반복할 작업입니다.

예제

i가 10보다 작으면 i을 출력합니다. 작업할 때마다 i는 1씩 커지고, i가 10이 되면 while문을 빠져나옵니다.

i = 1
while i < 10:
    print(i, end=' ')
    i = i + 1
1 2 3 4 5 6 7 8 9

while문 안에 while을 넣을 수 있습니다. 다음은 구구단 중 2단과 3단을 출력하는 예제입니다.

i = 1
while i < 3:
    i = i + 1
    j = 1
    while j < 10:
        print(i, 'X', j, '=', i*j)
        j = j + 1
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 X 3 = 9
3 X 4 = 12
3 X 5 = 15
3 X 6 = 18
3 X 7 = 21
3 X 8 = 24
3 X 9 = 27

break를 넣으면 while문을 빠져나옵니다. 다음은 input()으로 입력받은 수까지만 구구단을 출력하는 예제입니다.

x = int(input('Number : '))
i = 1
while i < 10:
    i = i + 1
    j = 1
    while j < 10:
        print(i, 'X', j, '=', i*j)
        j = j + 1
    if i == x:
        break
Number : 4
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 X 3 = 9
3 X 4 = 12
3 X 5 = 15
3 X 6 = 18
3 X 7 = 21
3 X 8 = 24
3 X 9 = 27
4 X 1 = 4
4 X 2 = 8
4 X 3 = 12
4 X 4 = 16
4 X 5 = 20
4 X 6 = 24
4 X 7 = 28
4 X 8 = 32
4 X 9 = 36

continue를 만나면, 그 이후의 구문은 실행하지 않고, while문의 처음으로 돌아갑니다. 다음은 10보다 작은 홀수를 출력하는 예제입니다. 2로 나눈 나머지가 0이면, 즉 짝수이면 print문을 실행하지 하지 않고 i의 값을 1 증가시킵니다.

i = 0
while i < 10:
    i = i + 1
    if i % 2 == 0:
        continue
    print(i, end=" ")
1 3 5 7 9
같은 카테고리의 다른 글
Python / 컴파일(Compile)하는 방법, EXE 파일 만드는 방법

Python / 컴파일(Compile)하는 방법, EXE 파일 만드는 방법

py_compile py_compile을 이용하여 컴파일하면 코드를 숨길 수 있다.(그러나, 그리 어렵지 않게 원래 코드를 알아낼 수 있다고 한다.) 다음과 같이 명령하면 HelloWorld.py를 컴파일한다. python -m py_compile HelloWorld.py 컴파일하면 __pycache__ 폴더가 생기고, 그 안에 HelloWorld.cpython-310.pyc 파일이 생성된다.(310은 Python 버전) pyc 형식의 파일이 실행 파일인데, 동일 버전의 Python이 설치된 PC에서만 실행된다. EXE 파일 만들기 Python이 설치되지 않은 기기에서도 실행 가능하게 ...

Python / Package / flake8 - PEP(Python Enhance Proposal) 검증 패키지 사용법

Python / Package / flake8 - PEP(Python Enhance Proposal) 검증 패키지 사용법

Style Guide for Python Code 여러 명이 공동으로 파이썬 코딩을 할 때, 각자의 스타일이 다르면 문제가 생길 수 있습니다. 그래서 협업을 수월하게 할 수 있도록 몇 가지 규칙을 정놓았는데, 이를 PEP(Python Enhance Proposal)라고 합니다. 몇 가지 규칙을 나열해보면... Use 4 spaces per indentation level. : 들여쓰기는 4칸의 공백 Limit all lines to a ...

Python / 자료형 / 사전(dict)

Python / 자료형 / 사전(dict)

사전(dict) 사전은 집합의 일종으로, 키와 값이 하나의 데이터를 만듭니다. 순서가 없고 중복된 데이터를 갖지 않아서, 중복 데이터를 만드는 +, *를 사용할 수 없지만, 키를 이용하여 인덱스기호()를 사용할 수 있습니다. 사전 만들기 사전은 집합과 마찬가지로 중괄호로 만듭니다. 키를 앞에, 값을 뒤에 쓰고, 구분은 콜론(:)으로 합니다. 데이터의 구분은 쉼표(,)로 합니다. >>> jb = {1:"one", 2:"two", 3:"three"} >>> jb {1: 'one', ...

Python / 반복문 / while

Python / 반복문 / while

while while은 주어진 조건이 참일 동안 작업을 반복하게 하는 구문입니다. 문법 while condition: statement condition : 작업을 하기 위한 조건입니다. 참일 동안 반복 작업을 합니다. statement : 반복할 작업입니다. 예제 i가 10보다 작으면 i을 출력합니다. 작업할 때마다 i는 1씩 커지고, i가 10이 되면 while문을 빠져나옵니다. i = 1 while i < 10: print(i, ...

Python / 사용자 정의 함수 만들고 호출하기

Python / 사용자 정의 함수 만들고 호출하기

함수를 정의하고 호출하는 방법을 알아봅니다. 함수 만들기 def function_name( parameter ) : # code function_name : 함수 이름입니다. 변수명을 만드는 규칙과 같은 규칙으로 만듭니다. parameter : 인수입니다. 인수가 여러 개인 경우 쉼표(,)로 구분합니다. 함수 호출하기 function_name( parameter ) 예제 Hello를 출력하는 함수를 정의합니다. def jb_say_hello() : print('Hello') 함수를 호출하면 Hello가 출력됩니다. >>> jb_say_hello() Hello 함수를 정의하는 위치 함수는 ...

Python / 문법 / 주석

Python / 문법 / 주석

주석에는 한 줄 주석과 여러 줄 주석이 있습니다. 한 줄 주석은 #을 사용합니다. # 뒤의 문자열이 주석이 됩니다. # 한 줄 주석 print( "Hello" ) # Hello 출력 여러 줄 주석은 작은 따옴표 세 개('''), 또는 큰 따옴표 세 개(""")를 사용합니다. 혼용할 수는 없습니다. ''' print( "Hello" ) print( "World" ) ''' print( "Hello" ) print( "World" ) """ print( "Hello" ) print( "World" ...

Python / len() / 문자열의 길이 반환하는 함수

Python / len() / 문자열의 길이 반환하는 함수

len()은 문자열의 길이 반환하는 함수이다. 간단한 예는 다음과 같다. len( "abc" ) # 3 반환 정수나 실수 등은 문자열이 아니므로 에러가 난다. 문자열로 변환한 후 센다. len( str( 1234 ) ) # 4 반환 한글도 1로, 공백도 1로 센다. len( "한글과 공백" ) # 6 반환 리스트나 튜플 등에서는 그 안에 속한 값의 ...

Python / dir() / 객체의 메소드 등을 반환하는 함수

Python / dir() / 객체의 메소드 등을 반환하는 함수

예제 1 a = "Hello" print( dir( a ) ) ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', ...

Python / str() / 자료형을 문자열로 변환하는 함수

Python / str() / 자료형을 문자열로 변환하는 함수

str()은 데이터 타입을 문자열로 변환하는 함수이다. >>> a = 1 >>> type( a ) <class 'int'> >>> print( a ) 1 >>> b = str( a ) >>> type( b ) <class 'str'> >>> print( b ) 1 >>> a = 1.23 >>> type( a ) <class 'float'> >>> print( a ) 1.23 >>> b = str( a ) >>> type( b ) <class 'str'> >>> print( b ) 1.23 Python ...

Python / 자료형 / 리스트(list)

Python / 자료형 / 리스트(list)

리스트(list) 여러 개의 자료를 하나의 변수로 관리할 때 사용합니다. 리스트 만들기 리스트는 대괄호로 만듭니다. >>> jb = 빈 리스트를 만들 수 있습니다. >>> jb = 리스트 출력하기 print() 함수로 출력해봅니다. >>> jb = >>> print(jb) 리스트는 인덱스를 가집니다. 인덱스를 이용해서 특정 위치의 값을 출력할 수 있습니다. >>> print(jb) four >>> print(jb) 5 범위를 출력할 수 있습니다. >>> print(jb) >>> ...