python - 有没有办法从列表项中获取一个整数?
问题描述
我正在尝试将一段代码添加到我的程序中,将列表项移动到单独的列表并删除除整数以外的任何字符。例如,如果我想将 'r2' 移动到不同的列表中,我该如何删除过程中的 'r'?
我尝试使用 append 函数将项目移动到新列表,但我找不到任何可以删除字母并留下整数的东西。
p1_int.append(player1_hand)
int(p1_int)
print(p1_int)
player1_hand 仅包含 1 个项目,即数字和字母组合,新列表为 p1_int。这是错误消息:IndexError:列表索引超出范围
编辑:预期的结果应该是 p1_int = ['number'] 或者如果我想跨越 'r1' p1_int = ['1']
解决方案
考虑使用正则表达式来去除每个非数字字符:
p1_int = []
s = "r2"
n = int(re.sub(r'\D', '', s))
p1_int.append(n)
结果:
[2]
推荐阅读
- python - MongoDB 使用同一个文档更新整个集合
- android - 创建餐厅/酒吧菜单应用程序的最佳解决方案
- excel - 计算年化平均回报
- ios - Xcode SpriteKit 游戏 - 如何在应用安装期间为多种屏幕尺寸配置 UI
- php - 内存泄漏 - 一个简单的 phpinfo() 页面会增加容器内存使用量
- android - 检查互联网
- javascript - React Native 条件渲染自定义卡片样式问题
- selenoid - 无法使用 docker 启动 selenoid 服务器
- javascript - Nodejs docx-merger 插件“Word 发现不可读的内容”
- react-native - 根据语言选择重新渲染当前视图