Mercurial > hg
view tests/seq.py @ 40773:0605726179a0
tests: apply binary mode to output in seq.py
I noticed this when playing with running tests using WSL, and iterating over the
output yielded '0\r', '1\r',... Most of the other *.py tools do this, and `seq`
on MSYS lacks '\r' in the output, so this is more consistent.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sat, 01 Dec 2018 21:42:48 -0500 |
parents | 08b8b56bd2e8 |
children | 2372284d9457 |
line wrap: on
line source
#!/usr/bin/env python # # A portable replacement for 'seq' # # Usage: # seq STOP [1, STOP] stepping by 1 # seq START STOP [START, STOP] stepping by 1 # seq START STEP STOP [START, STOP] stepping by STEP from __future__ import absolute_import, print_function import os import sys try: import msvcrt msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY) msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY) except ImportError: pass if sys.version_info[0] >= 3: xrange = range start = 1 if len(sys.argv) > 2: start = int(sys.argv[1]) step = 1 if len(sys.argv) > 3: step = int(sys.argv[2]) stop = int(sys.argv[-1]) + 1 for i in xrange(start, stop, step): print(i)