How to convert 2D string list to 2D int list python?

Question:

How to convert a 2d string list in 2d int list? example:

>>> pin_configuration = [['1', ' 1', ' 3'], ['2', ' 3', ' 5'], ['3'], ['4', ' 5'], ['5', ' 1'], ['6', ' 6'], ['7']]

>>> to [[1,1,3], [2,3,5], [3], [4,5], [5,1], [6,6], [7]]
Asked By: srky

||

Answers:

Do with list comprehension,

In [24]: l =  [['1', ' 1', ' 3'], ['2', ' 3', ' 5'], ['3'], ['4', ' 5'], ['5', ' 1'], ['6', ' 6'], ['7']]

In [25]: result = [map(int,i) for i in l]

Result

In [26]: print result
[[1, 1, 3], [2, 3, 5], [3], [4, 5], [5, 1], [6, 6], [7]]
Answered By: Rahul K P

Python has a function called int() that will make strings into integers. Try that out.

Answered By: Steve Woods

Python 3.x

print ( [list( map(int,i) ) for i in l] )

Output :

[[1, 1, 3], [2, 3, 5], [3], [4, 5], [5, 1], [6, 6], [7]]
Answered By: Transhuman