Nếu bạn thực sự muốn một mảng kiểu C
import array
a = array.array('i', x * [0])
a[3] = 5
try:
[5] = 'a'
except TypeError:
print('integers only allowed')
Lưu ý rằng không có khái niệm về chưa khởi tạo trong python. Một biến là một tên được liên kết với một giá trị, vì vậy giá trị đó phải có một cái gì đó. Trong ví dụ trên, mảng được khởi tạo bằng các số không.
Tuy nhiên, điều này không phổ biến trong python, trừ khi bạn thực sự cần nó cho những thứ cấp thấp. Trong hầu hết các trường hợp, bạn nên sử dụng danh sách trống hoặc mảng trống rỗng, như các câu trả lời khác đề xuất.
a = [obj] * N
ý là cùng một đối tượng xuất hiện trong mỗi phần tử của mảng. Nếu nó là một đối tượng có thể thay đổi và bạn sửa đổi một mục, tất cả sẽ bị thay đổi. ... Nhưng, đối với ví dụ này sử dụng số nguyên (hoặc bất kỳ kiểu bất biến nào khác), nó không có gì khác biệt. Hoặc, nếu bạn chỉ gán cho các phần tử, nó cũng không phải là vấn đề. (Tôi đề cập đến nó bởi vì tôi đã thực hiện chính xác điều đó quá thường :))