5 回答

TA貢獻1856條經驗 獲得超11個贊
使用zip和list comprehension:
In [1968]: list3 = [x + y for x,y in zip(list1, list2)]
In [1968]: list3
Out[1968]: ['namemega', 'age20', 'addressSadia']

TA貢獻1873條經驗 獲得超9個贊
如果您不熟悉 zip 有一個簡單的方法適合您,您可以使用此代碼,它將生成您期望的輸出
list1 = ['name', 'age', 'address']
list2 = ['mega', '20', 'Sadia']
list3 = []
for i in range(0,len(list1)):
list3.append(list1[i]+list2[i]) # Concatenation
list3

TA貢獻1829條經驗 獲得超4個贊
如果您熟悉 pandas,您可以輕松添加兩個數據框來創建結果。嘗試這個。
import pandas as pd
a = pd.DataFrame(data = ['name', 'age', 'address'])
b = pd.DataFrame(data = ['mega', '20', 'Sadia'])
c = a + b
print (list(c[0]))

TA貢獻1859條經驗 獲得超6個贊
其他答案已經解釋了如何獲得所需的輸出。但是,我認為這不是您實際需要的輸出。您每次都必須將鍵(例如name)與值(例如 `mega)分開,并且通過在沒有任何分隔符的情況下連接字符串,您必須知道使用哪個鍵來分隔鍵!
相反,您可以使用列表理解或僅使用內置函數來創建元組列表。這樣,您可以輕松地迭代和分離列表中的鍵和值。
>>> [(a, b) for a, b in zip(list1, list2)]
[('name', 'mega'), ('age', '20'), ('address', 'Sadia')]
>>> list(zip(list1, list2))
[('name', 'mega'), ('age', '20'), ('address', 'Sadia')]
不過,更有用的可能是字典,最重要的是,它還可以讓您輕松獲取特定鍵的值,例如使用d["name"]; 同樣,您可以使用字典理解或內置函數:
>>> {a: b for a, b in zip(list1, list2)}
{'name': 'mega', 'age': '20', 'address': 'Sadia'}
>>> dict(zip(list1, list2))
{'name': 'mega', 'age': '20', 'address': 'Sadia'}
您甚至可以考慮創建一個namedtuple來創建某種數據類。這不僅增加了一點類型安全性,而且還允許使用點表示法獲取值,例如person.name.
>>> import collections
>>> Person = collections.namedtuple("Person", "name age address")
>>> Person(*list2)
Person(name='mega', age='20', address='Sadia')
添加回答
舉報