2013-03-04 3 views
0

Я новичок в Python, и у меня есть assginment, который читает файл и преобразует его в матрицу. Мой файл:Python: convert str to integer

n 5 
0 -- 3 
0 -- 4 
1 -- 2 
1 -- 3 
2 -- 4 
3 -- 3 

Прежде всего, мне нужно сделать матрицу «5X5». я прочитал 5 так:

f = open("graph.txt") 
    mylist = f.readlines() 
    a = mylist[0][2] 

Когда говорят print a печатает 5. Для того, чтобы сделать матрицу Мне нужно преобразовать эту строку в целое. Однако, когда я использовал функцию int(a), она осталась str. Как я могу изменить его на целое число навсегда?

+1

Возможно, вы также захотите изучить метод '.split()' для разделения строк на куски на основе пробелов. Это похоже на инструмент, который вам понадобится. –

+0

Как выглядит результирующая матрица? Не могли бы вы опубликовать его? –

+0

*** Близко связанные ***: [Как читать числа из файла в Python?] (Http://stackoverflow.com/q/6583573/78845) – Johnsyweb

ответ

1

int создает новое значение, но не меняет оригинал. Таким образом, на самом деле изменить значение, вы должны сделать что-то вроде

list[0][2] = int(list[0][2]) 
0

использования int() конструктор для назначения a:

a = int(list[0][2]) 

Обратите внимание, что это вызовет исключение, если строка не может быть преобразована в внутр.