Reputation: 209
I have a simple problem. I need to insert an element from a list at the first position of every individual list, of a list of a list.
I tried it using the code mentioned below but it doesn't give the required_output
for i in bank_name_list:
for j in dummy_list:
j.insert(0,i)
print(dummy_list)
bank_name_list = ['Bank1', 'Bank2']
dummy_list = [[2,4,5],[5,6,8]]
actual_output = [['Bank2', 'Bank1', 2, 4, 5], ['Bank2', 'Bank1', 5, 6, 8]]
required_output = [['Bank1',2,4,5],['Bank2',5,6,8]]
Upvotes: 0
Views: 40
Reputation: 474
Simple and pythonic, try this out:
bank_name_list = ['Bank1', 'Bank2']
dummy_list = [[2,4,5],[5,6,8]]
output = []
for item in zip(bank_name_list, dummy_list):
output.append([item[0],*item[1]])
print(output)
Upvotes: 0
Reputation: 1852
Solution:
bank_name_list = ['Bank1', 'Bank2']
dummy_list = [[2,4,5],[5,6,8]]
bank_name_list
for index, sub_list in enumerate(dummy_list):
sub_list.insert(0,bank_name_list[index])
print(dummy_list)
Output:
[['Bank1', 2, 4, 5], ['Bank2', 5, 6, 8]]
But this approach works only if both bank_name_list
and dummy_list
have same length
Upvotes: 0
Reputation: 82765
Use zip
Ex:
bank_name_list = ['Bank1', 'Bank2']
dummy_list = [[2,4,5],[5,6,8]]
result = []
for bank, dummy in zip(bank_name_list, dummy_list):
result.append([bank] + dummy)
print(result)
Output:
[['Bank1', 2, 4, 5], ['Bank2', 5, 6, 8]]
Upvotes: 1