diff --git a/Lib/lib2to3/main.py b/Lib/lib2to3/main.py index 828b02f5ca9..7c26cdbccc8 100644 --- a/Lib/lib2to3/main.py +++ b/Lib/lib2to3/main.py @@ -64,7 +64,7 @@ class StdoutRefactoringTool(refactor.MultiprocessRefactoringTool): print(line) def warn(msg): - print >> sys.stderr, "WARNING: %s" % (msg,) + print("WARNING: %s" % (msg,), file=sys.stderr) def main(fixer_pkg, args=None): @@ -159,8 +159,8 @@ def main(fixer_pkg, args=None): options.processes) except refactor.MultiprocessingUnsupported: assert options.processes > 1 - print >> sys.stderr, "Sorry, -j isn't " \ - "supported on this platform." + print("Sorry, -j isn't supported on this platform.", + file=sys.stderr) return 1 rt.summarize() diff --git a/Tools/scripts/pathfix.py b/Tools/scripts/pathfix.py index 601a172fdc4..6cbac10ecbb 100755 --- a/Tools/scripts/pathfix.py +++ b/Tools/scripts/pathfix.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#!/usr/bin/env python3 # Change the #! line occurring in Python scripts. The new interpreter # pathname must be given with a -i option. @@ -43,8 +43,9 @@ def main(): sys.exit(2) for o, a in opts: if o == '-i': - new_interpreter = a - if not new_interpreter or new_interpreter[0] != '/' or not args: + new_interpreter = a.encode() + if not new_interpreter or not new_interpreter.startswith(b'/') or \ + not args: err('-i option or file-or-directory missing\n') err(usage) sys.exit(2) @@ -61,7 +62,7 @@ def main(): ispythonprog = re.compile('^[a-zA-Z0-9_]+\.py$') def ispython(name): - return ispythonprog.match(name) >= 0 + return bool(ispythonprog.match(name)) def recursedown(dirname): dbg('recursedown(%r)\n' % (dirname,)) @@ -88,7 +89,7 @@ def recursedown(dirname): def fix(filename): ## dbg('fix(%r)\n' % (filename,)) try: - f = open(filename, 'r') + f = open(filename, 'rb') except IOError as msg: err('%s: cannot open: %r\n' % (filename, msg)) return 1 @@ -101,7 +102,7 @@ def fix(filename): head, tail = os.path.split(filename) tempname = os.path.join(head, '@' + tail) try: - g = open(tempname, 'w') + g = open(tempname, 'wb') except IOError as msg: f.close() err('%s: cannot create: %r\n' % (tempname, msg)) @@ -139,11 +140,11 @@ def fix(filename): return 0 def fixline(line): - if not line.startswith('#!'): + if not line.startswith(b'#!'): return line - if "python" not in line: + if b"python" not in line: return line - return '#! %s\n' % new_interpreter + return b'#! ' + new_interpreter + b'\n' if __name__ == '__main__': main()