Попробуйте это:
pt = list()
pt.append(raw_input())
pt.append(raw_input())
print pt
Теперь у вас есть два элемента в вашем списке. Как только вы познакомитесь с синтаксисом Python, вы можете написать это так:
pt = [raw_input(), raw_input()]
Также обратите внимание, что списки не следует путать с массивами в Java или C: списки растут динамически. Вам не нужно объявлять размер при создании нового списка.
Кстати: я опробовал ваш пример в интерактивной оболочке. Это работает, но, вероятно, не так, как вы ожидали:
>>> pt = [2]
>>> pt[0] = raw_input()
1011
>>> pt
['1011']
Полагаю, вы думали, что pt = [2]
создаст список длиной 2, поэтому pt[1] = raw_input()
потерпит неудачу, как вы упомянули:
>>> pt = [2]
>>> pt[0] = raw_input()
1011
>>> pt[1] = raw_input() # this is an assignment to an index not yet created.
1012
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list assignment index out of range
На самом деле, pt = [2]
создает список с одним элементом со значением 2
по индексу 0
:
>>> pt = [2]
>>> pt
[2]
>>>
Таким образом, вы можете присвоить индексу 0, как показано выше, но назначение для индекса 1 не будет работать - используйте append
для добавления в список.