You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在PyCharm中如何快速交换字面量字典的所有键值对?

高效交换Python字典键值对的几种方案

嘿,我太懂你这种不小心把字典键值写反,还要手动逐个修改的崩溃了!尤其是字典很长的时候,那简直是折磨。下面给你几个比复制到解释器更高效的办法:

1. 编辑器正则替换(最推荐!不用离开代码)

几乎所有主流编辑器(VS Code、PyCharm、Sublime等)都支持正则批量替换,直接在你的代码里就能搞定:

  • 打开编辑器的替换功能(一般是Ctrl+H/Cmd+H)
  • 开启正则匹配模式(通常是替换框旁边的.*图标)
  • 查找内容:"([^"]+)":"([^"]+)"
  • 替换内容:"\2":"\1"
  • 点击全部替换,瞬间所有键值对就交换完成了!

这个正则的逻辑是匹配"A":"B"格式的键值对,然后把捕获到的第一个分组(A)和第二个分组(B)互换位置,完美适配字符串类型的键值。

2. 命令行快速执行(不用打开解释器)

如果你不想动编辑器,可以直接在终端里一行命令搞定:

python -c "MY_DICT = {'VALUE1':'KEY1', 'VALUE2':'KEY2'}; print({v:k for k,v in MY_DICT.items()})"

把你的字典内容替换进去,执行后直接复制输出的结果就行,比打开Python解释器再输入代码快得多。

3. 编辑器宏(适合重复操作场景)

如果你经常遇到这种情况,可以给编辑器录制一个宏:
比如在PyCharm里,你可以录制“选中键值对→交换位置”的操作,之后只要按快捷键就能重复执行,适合字典格式比较规整的情况。不过相比正则,这个灵活性稍差一点。

另外要注意:如果你的字典里有重复的值,交换后会丢失数据(因为字典键唯一),所以执行前最好确认一下值都是唯一的哦!

内容的提问来源于stack exchange,提问作者Rick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:30:55