python - 如何在字符串列表中找到数字的位置?
问题描述
a = ['+321','+09e8','\sdf5234','6']
我想将其转换为所有数字的列表。换句话说,从列表中的所有字符串中删除所有非数字字符。结果应该是整数列表而不是字符串。
[321,98, 5234, 6]
任何帮助深表感谢!谢谢
解决方案
您可以使用re.sub
In [1]: import re
In [2]: a = ['+321','+09e8','\sdf5234','6']
In [3]: [int(re.sub('[^0-9]','',x)) for x in a]
Out[3]: [321, 98, 5234, 6]
这里re.sub('[^0-9]','',x)
将替换字符串中除数字(0-9)之外的所有字符。
推荐阅读
- android - 改造未正确接收响应
- java - 如何使用 ModelAndview 将模型(bean)值从控制器传递到 jsp 页面?
- angular - 使用哪个,Session、Cookies、服务器端数据?
- node.js - 使用组在 MongoDB 中使用集合范围聚合查询的慢查询
- azure - Azure ARM 模板如何将副本用于多个部分
- sql - 在 SQL 中使用修改后的关系复制同一表中的数据
- javascript - 当我现在的月份是任何一年的 12 月时,如何显示下个月?- JavaScript
- javascript - 有没有比 js 中的 location.href 更好的将页面重定向到另一个 JSP 的方法?
- xamarin - 应用程序未安装在 xamarin
- python - 从另一个区域连接到 DocumentDB