如何在python中“乘法”2个列表?

2024-04-24 06:59:59 发布

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

我有两个清单:

{
'ip': ['10.100.1.38', '10.100.1.39', '10.100.1.35'], 
 'port': ['3380', '3381', '3382', '3383', '3384', '3385', '3386', '3387']
}

我要获取列表:

[
 "10.100.1.38::3380"... "10.100.1.38::3387",
 "10.100.1.39::3380"... "10.100.1.39::3387",
 "10.100.1.35::3380"... "10.100.1.38::3387" 
]

Tags: ip列表port
3条回答
from itertools import product

res = [ip + "::" + port for ip, port in product(d['ip'], d['port'])]

您可以使用列表理解在一行中整齐地完成此操作:

out = [ip + "::" + port for ip in input["ip"] for port in input["port"]]

我试试:

output = []
for ip in dict['ip']:
    for port in dict['port']:
        output.append(ip + "::" + port)

相关问题 更多 >