4

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]]
0

3 Answers 3

11

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]]
Sign up to request clarification or add additional context in comments.

Comments

5

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]]

4 Comments

this is Python 2 only. Cast to list to be cross-version
@Ev.Kounis OP doesn't mentioned any version. And the functionality part will work with both.
Whenever no version is mentioned and one has to be assumed, going with the latest is the safest bet imho. But covering both is rather trivial in this case.
@Ev.Kounis So i used 2.7 here. I guess it's pretty stable and safest.
0

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

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.