district_name= [[li.getText() for li in data_rows[i].findAll('li')]
               for i in range(len(data_rows))]


上面的代码为我们提供了比哈尔邦的地区名称列表。如下表所示。

[['1', 'Nalanda'],
 ['2', 'Patna'],
 ['3', 'Gaya'],
 ['4', 'Buxer']]


但是我想在每行中再次添加一个静态元素“ Bihar”。像下面这样。

[['1', 'Bihar', 'Nalanda'],
 ['2', 'Bihar', 'Patna'],
 ['3', 'Bihar', 'Gaya'],
 ['4', 'Bihar', 'Buxer']]


我试图通过使用代码district_name.insert(0,'Bihar')来实现这一点。但它并没有给出预期的结果。它给了我们。

['Bihar',['1',  'Nalanda'],
 ['2', 'Patna'],
 ['3', 'Gaya'],
 ['4', 'Buxer']]


请帮我。

最佳答案

签出此代码:

x = [['1', 'Nalanda'], ['2', 'Patna'],  ['3', 'Gaya'], ['4', 'Buxer']]

for i in range(len(x)):
     x[i].insert(1,'Bihar')

print(x)


district_name.insert(0,'Bihar')将导致将Bihar插入为district_name的第一个元素。
但是你的意图是不同的。您希望将其插入列表中每个列表的第一位置。

所以你可能要做

 for i in range(len(x)):
      district_name[i].insert(1,'Bihar')

关于python - 如何在python3中的循环创建的每一行上添加静态值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46751813/

10-12 01:28