python - 删除字典值python中的空格
问题描述
我正在从外包中读取数据。数据具有“名称”和“带有警告的值”,因此我将它们以如下方式放入字典中
d[data[i:i+6]] = data[i+8:i+17], data[i+25:i+36]
因此,最后我的 dict 为;
{'GPT-P ': ('169 ', 'H '), 'GOT-P ': ('47 ', ' '), .....
如上所示,键和值都可能包含不必要的空格。我能够克服键中的空格;
d = {x.replace(' ',''): v
for x, v in d.items()}
但似乎无法管理类似的价值观。我尝试使用d.values()
,但它会修剪键名,并且仅适用于其中 1 个值。
您能帮我理解如何删除多个值的空间(在这种特殊情况下为 2 个值)并最终得到类似的东西;
{'GPT-P': ('169', 'H'), 'GOT-P ': ('47', ''), .....
谢谢。保持安全和健康
解决方案
您还需要在v
值中进行空格替换,但
在您的情况下,字典中的值似乎是tuples。
我猜你会想要删除每个元组的所有元素中的空格,所以你需要在这里进行第二次迭代。你可以这样做:
d = {'GPT-P ': ('169 ', 'H '), 'GOT-P ': ('47 ', ' ')}
{x.replace(' ', ''): tuple(w.replace(' ', '') for w in v) for x, v in d.items()}
返回:
{'GPT-P': ('169', 'H'), 'GOT-P': ('47', '')}
tuple(w.replace(' ', '') for w in v)
请注意,字典推导式中有列表(或元组)推导式。
推荐阅读
- c# - 如何在 C# 中使用 Discord Bot 发送消息?
- three.js - Three.js - 从循环中动态创建的数组中删除对象
- android - 在过渡期间保持隐藏导航栏和菜单栏
- javascript - 当您可以构建常规函数时,为什么要在 Javascript 中构建静态函数?
- javascript - Spring Boot 和 html 不呈现 javascript
- git - 本地合并推送后,分支中的提交记录在主分支中
- css - CSS - 模糊背景img,但它也适用于它前面的img
- python - 使用 Pybind11 创建带有嵌入式 python 的 exe 后是否需要安装 python?
- r - 使用 EpiR 和 purr:: map 或替代方法构建分层外延分析的最佳方法是什么?
- javascript - 如何在反应应用程序中单击按钮将文件上传到服务器?