파이썬 숫자 리스트 만들기 - paisseon susja liseuteu mandeulgi

Python 의 range 함수에대해 살펴보겠습니다.

제목처럼 range 함수는 연속된 정수를 만들어주는 함수입니다.

range 함수는 매개변수의 갯수에따라 사용법을 나눌수 있습니다.

1. range(stop) - 선언 및 매개변수가 하나일때

매개변수가 하나일때 해당 매개변수는 마지막 숫자를 의미합니다.

0부터 마지막숫자 전까지 정수들을 얻을 수 있습니다.

>>> ran = range(10)
>>> ran
range(0, 10)

>>> type(ran)
<class 'range'>

여기서 주의할점은 0부터 10까지의 숫자가 출력되는게 아니라 range(0,10) 이라는

range 타입으로 출력된다는 것이다.

그래서 우리는 주로 range 자료형으로 생성된 숫자범위를 List로 바꿔 사용하거나 for문을 이용해 사용합니다.

>>> range(3)
range(0, 3)

>>> list(range(3))
[0, 1, 2]

>>> for num in range(3):
       print(num)
0
1
2

2. range(start, stop) - 매개변수가 두개일때

매개변수가 2개인경우 첫번째 매개변수가 시작하는 숫자, 두번째 매개변수가 마지막 숫자가됩니다.

시작숫자는 당연히 마지막숫자보다 작아야 합니다.

>>> list(range(1, 5))
[1, 2, 3, 4]

>>> list(range(-3, 2))
[-3, -2, -1, 0, 1]

>>> list(range(5, 1))
[]

3. range(start, stop, step) - 매개변수가 세개일때

매개변수가 3개일때는 첫번째 매개변수는 시작숫자, 두번째는 마지막숫자, 세번째는 숫자사이의 간격을 나타냅니다.

숫자사이의 간격으로 음수도 지정할 수 있습니다. 이때는 시작숫자가 반드시 마지막숫자보다 커야되겠죠??

>>> list(range(0, 10, 3))
[0, 3, 6, 9]

>>> list(range(10, 0, -3))
[10, 7, 4, 1]

>>> list(range(5, 0, -1))
[5, 4, 3, 2, 1]

파이썬에서 리스트를 생성할 때는 다음과 같은 방법이 있다.

list = []
list = list()

여기서 코딩테스트에서 자주 사용하는 0으로 이루어진 리스트를 만들려면 다음과 같은 방법이 있다.

list = [0 for i in range(n)]

>>> list = [0 for i in range(10)]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

이와 같은 방법을 사용해서 2차원 리스트를 만들려면 다음과 같은 방법을 사용하면 된다.

double = [[0 for w in range(n)] for h in range(n)]

>>> double = [[0 for w in range(3)] for h in range(5)]
[[0, 0, 0], 
 [0, 0, 0], 
 [0, 0, 0], 
 [0, 0, 0], 
 [0, 0, 0]]

이런식으로 2차원 리스트를 만들 수 있다.

25. 파이썬 리스트 만들기¶

파이썬 숫자 리스트 만들기 - paisseon susja liseuteu mandeulgi

특정한 숫자로 채워진 파이썬 리스트 또는 NumPy 어레이를 간편하게 만드는 방법을 소개합니다.

파이썬 리스트 만들기¶

예제1¶

zeros = [0] * 10
print(zeros)

ones = [1] * 10
print(ones)

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

* 연산자를 사용해서 0을 10개 포함하는 리스트와 1을 10개 포함하는 리스트를 만들 수 있습니다.

파이썬 숫자 리스트 만들기 - paisseon susja liseuteu mandeulgi

예제2¶

a = list(range(5))
print(a)
print(type(a))

b = list(range(3, 10, 2))
print(b)
print(type(b))

[0, 1, 2, 3, 4]
<class 'list'>
[3, 5, 7, 9]
<class 'list'>

파이썬 내장함수 range()는 연속적인 숫자를 갖는 객체를 만듭니다.

내장함수 list()를 사용해서 이 객체를 list 객체로 변환할 수 있습니다.

파이썬 숫자 리스트 만들기 - paisseon susja liseuteu mandeulgi

NumPy 어레이 만들기¶

예제1¶

import numpy as np

np_zeros = np.zeros(10)
print(np_zeros)

np_ones = np.ones(10)
print(np_ones)

[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]

NumPy의 np.zeros()와 np.ones()는 각각 주어진 형태와 타입을 갖는 0 또는 1을 갖는 어레이를 반환합니다.

파이썬 숫자 리스트 만들기 - paisseon susja liseuteu mandeulgi

예제2¶

import numpy as np

np_arange1 = np.arange(5)
print(np_arange1)
print(type(np_arange1))

np_arange2 = np.arange(3, 10, 2)
print(np_arange2)
print(type(np_arange2))

[0 1 2 3 4]
<class 'numpy.ndarray'>
[3 5 7 9]
<class 'numpy.ndarray'>

NumPy의 np.arange()는 주어진 간격에 따라 연속적인 숫자들의 어레이를 반환합니다.

파이썬 숫자 리스트 만들기 - paisseon susja liseuteu mandeulgi