2014-10-17 126 views
-1

我有多个列表中的字符串列表。我想要将数字字符串更改为整数。列表中的字符串列表

例如: -

L1=[['123','string','list']['words','python','456']['code','678','links']] 

我要的是:

[[123,'string','list']['words','python',456]['code',678,'links']] 

我已经试过using-

W=range(len(L1))  
Q=range(2) 
if (L1[W][Q]).isdigit(): 
    (L1[W][Q])=(int(L1[W][Q])) 

,当我试图在上面的代码中,我得到了一个错误。

+0

请与我们分享你尝试过这么远。 – 2014-10-17 05:05:58

回答

1

使用str.isdigit()

L1=[['123','string','list'],['words','python','456'],['code','678','links']] 
for item in L1: 
    for i in range(0,len(item)): 
     if(item[i].isdigit()): 
      item[i] = int(item[i]) 

print(L1) 
0

事情是这样的:

>>> mylist = [['123','string','list'], ['words','python','456'], ['code','678','links']] 
>>> [ [(int(item) if item.isdigit() else item) for item in sublist] for sublist in mylist] 
[[123, 'string', 'list'], ['words', 'python', 456], ['code', 678, 'links']] 
相关问题