1 способ, данные даны "в столбик" Изначально заводится пустой массив и далее в цикле фуекцией append мы добавляем в конец масива считанные значения(не обязятельно числа, это могут быть строки или снова массивы)
n = int(input())
a = []
print(a)
for i in range(n):
a.append(int(input()))
print(a)
2 способ, данные даны "в столбик" Заводим массив неободимой длины и в цикле присваиваем в нужные ячейки нужные значения.
n = int(input())
a = [0] * n
print(a)
for i in range(n):
a[i] = int(input())
print(a)
Вторым способом проще, чем первым считать данные наоборот
n = int(input())
a = [0] * n
print(a)
for i in range(n-1, -1, -1):
a[i] = int(input())
print(a)
3 способ, данные даны "в строчку" input().split() считывает всю строку и разбивает её на несколько элементов по пробелам, получается некий список, причем каждый элемент списка - строка. Функция map применяет функцию из первого параметра к каждому элементу из списка. И далее полученный список функцией list приводится к типу массив
print(input().split())
a = list(map(int, input().split()))
print(a)
Обращение к элементу массива. Элементы нумеруются с нуля. Можно задавать отрицательные индексы, тогда элементы будут нумероваться с конца
a = ['ab', 'ba', 'cb', 'be']
print(a[2], a[3], a[0])
print(a[-1], a[-2], a[-3], a[-4])
Количество элементов в массиве
len(a)
1 способ в столбик
a = [1, 3, 5, 'aba']
for i in a:
print(i)
тоже самое
for i in range(len(a)):
print(a[i])
2 способ в строку
for i in a:
print(i, end = ' ')