기본적으로 C에서 이와 동등한 파이썬을 원합니다.
int a[x];
하지만 파이썬에서는 다음과 같은 배열을 선언합니다.
a = []
문제는 다음과 같은 값으로 임의의 슬롯을 할당하고 싶다는 것입니다.
a[4] = 1
그러나 배열이 비어 있기 때문에 파이썬으로는 할 수 없습니다.
답변
“배열”이 실제로 Python 목록을 의미하는 경우 다음을 사용할 수 있습니다.
a = [0] * 10
또는
a = [None] * 10
답변
파이썬에서 원하는 것을 정확히 할 수는 없습니다 (내가 올바르게 읽었다면). 목록의 각 요소에 대한 값을 입력해야합니다 (또는 배열이라고 부르는대로).
그러나 이것을 시도하십시오.
a = [0 for x in range(N)] # N = size of list you want
a[i] = 5 # as long as i < N, you're okay
다른 유형 목록의 None
경우 0 이외의 것을 사용하십시오. 종종 좋은 선택입니다.
답변
numpy를 사용할 수 있습니다.
import numpy as np
빈 배열의 예 :
np.empty([2, 2])
array([[ -9.74499359e+001, 6.69583040e-309],
[ 2.13182611e-314, 3.06959433e-309]])
답변
목록을 선언하고 각 요소를 추가하기 만하면됩니다. 예 :
a = []
a.append('first item')
a.append('second item')
답변
또한 목록의 확장 방법으로 확장 할 수 있습니다.
a= []
a.extend([None]*10)
a.extend([None]*20)
답변
당신 (또는이 질문의 다른 검색 자)이 실제로 정수로 채우기 위해 연속 배열을 만드는 데 관심이 있다면 bytearray 및 memoryivew를 고려 하십시오 .
# cast() is available starting Python 3.3
size = 10**6
ints = memoryview(bytearray(size)).cast('i')
ints.contiguous, ints.itemsize, ints.shape
# (True, 4, (250000,))
ints[0]
# 0
ints[0] = 16
ints[0]
# 16
답변
x=[]
for i in range(0,5):
x.append(i)
print(x[i])