bpo-31802: Fix importing native path module before importing os. (#4017)
diff --git a/Lib/ntpath.py b/Lib/ntpath.py
index 10d3f2d..2182ec7 100644
--- a/Lib/ntpath.py
+++ b/Lib/ntpath.py
@@ -5,6 +5,18 @@
module as os.path.
"""
+# strings representing various path-related bits and pieces
+# These are primarily for export; internally, they are hardcoded.
+# Should be set before imports for resolving cyclic dependency.
+curdir = '.'
+pardir = '..'
+extsep = '.'
+sep = '\\'
+pathsep = ';'
+altsep = '/'
+defpath = '.;C:\\bin'
+devnull = 'nul'
+
import os
import sys
import stat
@@ -19,17 +31,6 @@
"extsep","devnull","realpath","supports_unicode_filenames","relpath",
"samefile", "sameopenfile", "samestat", "commonpath"]
-# strings representing various path-related bits and pieces
-# These are primarily for export; internally, they are hardcoded.
-curdir = '.'
-pardir = '..'
-extsep = '.'
-sep = '\\'
-pathsep = ';'
-altsep = '/'
-defpath = '.;C:\\bin'
-devnull = 'nul'
-
def _get_bothseps(path):
if isinstance(path, bytes):
return b'\\/'