在csv python中拆分字符串

2024-05-16 00:42:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我名单上的每一行都是这样的:

[(21, ['Rodriguez', 'Lara', 'Vicky', '55302292'])]

我希望它只打印名字,在这里是Vicky。我使用的代码是

for x in numbers:  
    r=str(x)  
    d1= r.split(',')  
    print ('D1', d1)  

它打印了这个:

['[(21', " ['Rodriguez'", " 'Lara'", " 'Vicky'", " '55302292'])]"]

Tags: 代码infor名字d1splitprintnumbers
3条回答

试试这个:

for x in numbers:
  r=str(x)
  a=r.split(',')
  print (a[3].strip("' "))

首先获取列表,然后从中提取数据

>>> list = [(21, ['Rodriguez', 'Lara', 'Vicky', '55302292'])]
>>> names = list[0][1] 
>>> names
['Rodriguez', 'Lara', 'Vicky', '55302292']
>>> names[2]
Vicky

不要把你的完美清单变成一个字符串!只需使用索引:

x[0][1][2]

为了说明这一点:

>>> x = [(21, ['Rodriguez', 'Lara', 'Vicky', '55302292'])]
>>> x[0]
(21, ['Rodriguez', 'Lara', 'Vicky', '55302292'])
>>> x[0][1]
['Rodriguez', 'Lara', 'Vicky', '55302292']
>>> x[0][1][2]
'Vicky'

每个额外的订阅([...])深入到嵌套结构中;x[0]从列表中提取元组;x[0][1]然后访问该元组中的列表值(x[0][0]将给您21),并且x[0][1][2]返回'Vicky',即嵌套列表中的第三个元素。你知道吗

相关问题 更多 >