[英]concatenate key value pairs from python dictionary
我在 python 中有一本字典。 鍵和值都是字符串。 實際上,鍵是某種標志(例如-f
),而值是選項(例如,像20
這樣的 int )。 我想要做的是創建一個包含所有鍵和值的字符串。 字典可能看起來像這樣: {'-f': 20, '-d': 30}
我想要的是這樣的: "-f 20 -d 30"
我認為這應該是一件容易的事,但直到現在我才找到解決方案......
這是使用列表理解的一種方法:
d = {'-f': 20, '-d': 30}
' '.join([i for k,v in d.items() for i in [k, str(v)]])
# '-f 20 -d 30'
這相當於:
out = []
for k,v in d.items():
for i in [k, str(v)]:
out.append(i)
' '.join(out)
# '-f 20 -d 30'
一次嘗試:
s = ''
for k, v in dct.items():
s += k + ' ' + str(v) + ' '
# remove the last character, an unnecessary space
s = s[:-1]
您可以將str.join
與生成器表達式一起使用:
d = {'-f': 20, '-d': 30}
' '.join(str(e) for t in d.items() for e in t)
# '-f 20 -d 30'
基於 yatu 答案,但使用f-strings你可以這樣做:
d = {'-f': 20, '-d': 30}
' '.join([f"{k} {v}" for k,v in d.items()])`
# '-f 20 -d 30'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.