python - 如何在Python中忽略空格读取下一个整数?

标签 python input python-3.x

如何在 Python 3 中读取下一个整数而忽略空格?有没有办法制作一个从空格分隔的整数流中返回整数的生成器?

我拥有的最好的就是这个:

def ints():
    while True:
        yield from (int(x) for x in input().split())

最佳答案

完全忽略空格并从文件中读取(将整数纯粹视为连续数字):

import mmap
import re

with open('somefile', 'rb') as fin:
    mf = mmap.mmap(fin.fileno(), 0, access=mmap.ACCESS_READ)
    for digits in re.finditer('(\d+)', mf):
        print(digits.group(1))

或者,如果您已经将所有内容都包含在字符串中,则适本地调整finditer,也许类似于:

yield from (match.group(1) for match in re.finditer('\d+', some_string))

关于python - 如何在Python中忽略空格读取下一个整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19504749/

相关文章:

python - 如何使用 Faust Python 包将 kafka 主题与 Web 端点连接起来?

python - 类定义完成后,对类对象的所有引用都位于何处?

python - tensorflow 中边界框的坐标

python - Heroku build 卡在 Building Source for Simple Python Flask App

python - 如何用Python预测第二天的股价?

python - Matplotlib xlabel 绘图错误(IndexError : list index out of range)

python - 如何修复 Berkeley DB 文件中不正确的 XML 标签

javascript - 在输入字段中禁用滚动

java - 阶段中的 LibGDX Actor 未收到点击事件

java - 读取未知数量的输入