Skip to main content
 首页 » 编程设计

python之在python中用字典制作一个字符串

2025年05月04日18xing901022

我有一个看起来像这样的字典:

d = {'a': 'b', 'c': 'd'} 

现在,当我使用 str(d) 从中生成一个 str 时,我得到了

>> "{'a': 'b', 'c': 'd'}" 

但我需要它看起来像这样:

>> "a=b; c=d; "  

我创建了执行此操作的这段代码:

b = '' 
for k, v in d.items(): 
    b += str(k) + '=' + str(v) + '; ' 

有没有一种方法可以达到相同的效果,但使用内联操作或其他更简洁的方法,而不使用 for 循环?

请您参考如下方法:

她是另一种使用 ''.join() 的方式:

';'.join(map('='.join, d.items())) 

返回:

'a=b;c=d' 

这假设最后一个 ; 是多余的。如果不是,您可以获得“精确”输出,如下所示:''.join([f'{k}={v}; ' for k,v in d.items()])


时间:

%timeit ';'.join(map('='.join, d.items()))          #1000000 loops,best of 3: 810 ns per loop 
%timeit ';'.join(['='.join(x) for x in d.items()])  #1000000 loops,best of 3: 956 ns per loop 
%timeit ';'.join([f'{k}={v}' for k,v in d.items()]) #1000000 loops,best of 3: 872 ns per loop