python - 查找符号的小写(未移位)形式
问题描述
x = "Foo 890 bar *()"
我怎样才能让小写字母,包括"*()"
“未移位”回到890
?期望的结果:
foo 890 bar 890
不需要的:
x.lower() => "foo 890 bar *()"
解决方案
不移位取决于键盘布局。这不是通用映射。你可以硬编码一个。
unshift = {
'!': '1', '@': '2', '#': '3', '$': '4', '%': '5',
'^': '6', '&': '7', '*': '8', '(': '9', ')': '0',
}
x = ''.join(unshift.get(c, c.lower()) for c in x)
编写该映射的另一种更紧凑的方法是:
unshift = dict(zip('!@#$%^&*()', '1234567890'))
推荐阅读
- reactjs - 存在html模板脚本时,React js路由不起作用
- javascript - jQuery基于单元格值突出显示背景
- python - 中心 TopLevel 窗口,保持网格/包几何的动态大小?
- python - 查找集合减法或字典列表之间的差异
- python - 如何使用以任何大写字母开头的正则表达式从熊猫系列中提取字符串
- python - Tensorboad 激活值直方图未显示 Keras 回调
- google-sheets - 如何比较 SUMIFS 公式中的日期部分
- c++ - 排名选择投票
- sql-server - 退出代码 3010 使用 Vagrant 安装 SQL Server
- windows - 从 NSIS 安装程序中回答用户提示