Skip to main content
 首页 » 编程设计

用于 2 个列表字符串格式的 Python 3 单线

2025年05月04日19fff_TT

我在 python3 类中有 2 个列表:

self.keys = ["a","b","c","d"] 
self.values = [1,2,3,4] 

len(self.keys) == len(self.values),总是。

我想创建一个模仿字典打印输出的字符串:{a:1, b:2, c:3, d:4}

我在一个包含以下内容的方法中执行此操作:

sr = "" 
for i,k in enumerate(self.keys): 
    sr += "{}:{},".format(k,self.values[i]) 
return "{%s}" % sr[:len(sr)-1] 

可以一行吗?如果没有,是否有更好的方法来做到这一点?

请您参考如下方法:

使用zip然后将其设为 dict :

keys = ["a","b","c","d"] 
values = [1,2,3,4] 
 
dict(zip(keys, values)) 

输出:

{'b': 2, 'a': 1, 'c': 3, 'd': 4}