Close #18538: ``python -m dis`` now uses argparse.
Patch by Michele Orrù.
This commit is contained in:
parent
e726ce1f3e
commit
095668914c
27
Lib/dis.py
27
Lib/dis.py
|
@ -436,25 +436,14 @@ class Bytecode:
|
|||
|
||||
def _test():
|
||||
"""Simple test program to disassemble a file."""
|
||||
if sys.argv[1:]:
|
||||
if sys.argv[2:]:
|
||||
sys.stderr.write("usage: python dis.py [-|file]\n")
|
||||
sys.exit(2)
|
||||
fn = sys.argv[1]
|
||||
if not fn or fn == "-":
|
||||
fn = None
|
||||
else:
|
||||
fn = None
|
||||
if fn is None:
|
||||
f = sys.stdin
|
||||
else:
|
||||
f = open(fn)
|
||||
source = f.read()
|
||||
if fn is not None:
|
||||
f.close()
|
||||
else:
|
||||
fn = "<stdin>"
|
||||
code = compile(source, fn, "exec")
|
||||
import argparse
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('infile', type=argparse.FileType(), nargs='?', default='-')
|
||||
args = parser.parse_args()
|
||||
with args.infile as infile:
|
||||
source = infile.read()
|
||||
code = compile(source, args.infile.name, "exec")
|
||||
dis(code)
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
|
|
@ -40,6 +40,9 @@ Core and Builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #18538: ``python -m dis`` now uses argparse for argument processing.
|
||||
Patch by Michele Orrù.
|
||||
|
||||
- Issue #18394: Close cgi.FieldStorage's optional file.
|
||||
|
||||
- Issue #17702: On error, os.environb now removes suppress the except context
|
||||
|
|
Loading…
Reference in New Issue