Define execfile, file, long, raw_input, xrange for Python 3
authorcclauss <cclauss@bluewin.ch>
Thu, 3 May 2018 07:19:05 +0000 (09:19 +0200)
committercclauss <cclauss@bluewin.ch>
Thu, 3 May 2018 07:19:05 +0000 (09:19 +0200)
doc/pattern_tools/svgfig.py
modules/dnn/test/imagenet_cls_test_alexnet.py
modules/ts/misc/trace_profiler.py
samples/python/_doc.py
samples/python/demo.py
samples/python/tutorial_code/core/AddingImages/adding_images.py

index 180eec7..4fa6980 100755 (executable)
@@ -29,6 +29,12 @@ try:
 except NameError:
     unicode = lambda s: str(s)
 
+try:
+    xrange          # Python 2
+except NameError:
+    xrange = range  # Python 3
+
+
 if re.search("windows", platform.system(), re.I):
     try:
         import _winreg
@@ -600,7 +606,7 @@ def template(fileName, svg, replaceme="REPLACEME"):
 
 def load(fileName):
     """Loads an SVG image from a file."""
-    return load_stream(file(fileName))
+    return load_stream(open(fileName))
 
 def load_stream(stream):
     """Loads an SVG image from a stream (can be a string or a file object)."""
index 49597d9..b6922f7 100644 (file)
@@ -16,6 +16,11 @@ except ImportError:
     raise ImportError('Can\'t find OpenCV Python module. If you\'ve built it from sources without installation, '
                       'configure environment variable PYTHONPATH to "opencv_build_dir/lib" directory (with "python3" subdirectory if required)')
 
+try:
+    xrange          # Python 2
+except NameError:
+    xrange = range  # Python 3
+
 
 class DataFetch(object):
     imgs_dir = ''
index 1d10890..189bed2 100644 (file)
@@ -6,10 +6,15 @@ import csv
 from pprint import pprint
 from collections import deque
 
+try:
+    long        # Python 2
+except NameError:
+    long = int  # Python 3
+
 # trace.hpp
-REGION_FLAG_IMPL_MASK = 15 << 16;
-REGION_FLAG_IMPL_IPP = 1 << 16;
-REGION_FLAG_IMPL_OPENCL = 2 << 16;
+REGION_FLAG_IMPL_MASK = 15 << 16
+REGION_FLAG_IMPL_IPP = 1 << 16
+REGION_FLAG_IMPL_OPENCL = 2 << 16
 
 DEBUG = False
 
index 5a2a81b..02c733c 100755 (executable)
@@ -7,8 +7,6 @@ ones with missing __doc__ string.
 
 # Python 2/3 compatibility
 from __future__ import print_function
-import sys
-PY3 = sys.version_info[0] == 3
 
 from glob import glob
 
@@ -17,11 +15,11 @@ if __name__ == '__main__':
     for fn in glob('*.py'):
         loc = {}
         try:
-            if PY3:
-                exec(open(fn).read(), loc)
-            else:
-                execfile(fn, loc)
-        except:
+            try:
+                execfile(fn, loc)           # Python 2
+            except NameError:
+                exec(open(fn).read(), loc)  # Python 3
+        except Exception:
             pass
         if '__doc__' not in loc:
             print(fn)
index aef5a23..a57a5d3 100755 (executable)
@@ -7,7 +7,6 @@ Sample-launcher application.
 # Python 2/3 compatibility
 from __future__ import print_function
 import sys
-PY3 = sys.version_info[0] == 3
 
 # local modules
 from common import splitfn
@@ -17,11 +16,11 @@ import webbrowser
 from glob import glob
 from subprocess import Popen
 
-if PY3:
-    import tkinter as tk
+try:
+    import tkinter as tk  # Python 3
     from tkinter.scrolledtext import ScrolledText
-else:
-    import Tkinter as tk
+except ImportError:
+    import Tkinter as tk  # Python 2
     from ScrolledText import ScrolledText
 
 
@@ -116,10 +115,10 @@ class App:
         name = self.demos_lb.get( self.demos_lb.curselection()[0] )
         fn = self.samples[name]
         loc = {}
-        if PY3:
-            exec(open(fn).read(), loc)
-        else:
-            execfile(fn, loc)
+        try:
+            execfile(fn, loc)           # Python 2
+        except NameError:
+            exec(open(fn).read(), loc)  # Python 3
         descr = loc.get('__doc__', 'no-description')
 
         self.linker.reset()
index c81fdcd..65c6154 100644 (file)
@@ -1,35 +1,36 @@
 from __future__ import print_function
-import sys
 
 import cv2 as cv
 
 alpha = 0.5
 
+try:
+    raw_input          # Python 2
+except NameError:
+    raw_input = input  # Python 3
+
 print(''' Simple Linear Blender
 -----------------------
 * Enter alpha [0.0-1.0]: ''')
-if sys.version_info >= (3, 0): # If Python 3.x
-    input_alpha = float(input())
-else:
-    input_alpha = float(raw_input())
+input_alpha = float(raw_input().strip())
 if 0 <= alpha <= 1:
     alpha = input_alpha
-## [load]
+# [load]
 src1 = cv.imread('../../../../data/LinuxLogo.jpg')
 src2 = cv.imread('../../../../data/WindowsLogo.jpg')
-## [load]
+# [load]
 if src1 is None:
-    print ("Error loading src1")
+    print("Error loading src1")
     exit(-1)
 elif src2 is None:
-    print ("Error loading src2")
+    print("Error loading src2")
     exit(-1)
-## [blend_images]
+# [blend_images]
 beta = (1.0 - alpha)
 dst = cv.addWeighted(src1, alpha, src2, beta, 0.0)
-## [blend_images]
-## [display]
+# [blend_images]
+# [display]
 cv.imshow('dst', dst)
 cv.waitKey(0)
-## [display]
+# [display]
 cv.destroyAllWindows()