From: Roland Mas <roland.mas@entierement.net>
Date: Sat, 14 Mar 2026 12:09:10 +0100
Subject: Fix SyntaxWarnings

---
 mrcz/ReliablePy.py | 12 ++++++------
 mrcz/ioMRC.py      | 14 +++++++-------
 mrcz/test_mrcz.py  | 38 +++++++++++++++++++-------------------
 3 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/mrcz/ReliablePy.py b/mrcz/ReliablePy.py
index 78f067a..5658f54 100644
--- a/mrcz/ReliablePy.py
+++ b/mrcz/ReliablePy.py
@@ -359,7 +359,7 @@ class ReliablePy(object):
             plt.plot( self.star['data_fsc']['Resolution'], self.star['data_fsc']['CorrectedFourierShellCorrelationPhaseRandomizedMaskedMaps'], 
                  '.-', color='goldenrod', label="Random-phase corrected FSC" )
         except: pass
-        plt.xlabel( "Resolution ($\AA^{-1}$)" )
+        plt.xlabel( r"Resolution ($\AA^{-1}$)" )
         plt.ylabel( "Fourier Shell Correlation" )
         plt.legend( loc='upper right', fontsize=16 )
         plt.xlim( np.min(self.star['data_fsc']['Resolution']), np.max(self.star['data_fsc']['Resolution']) )
@@ -382,7 +382,7 @@ class ReliablePy(object):
             plt.semilogy( Resolution, SSNR+1.0, 
                      label="Class %d: %d" %(K+1,N_particles*self.star[b'data_model_classes'][b'ClassDistribution'][K]) )
         plt.legend( loc = 'best' )
-        plt.xlabel( "Resolution ($\AA^{-1}$)" )
+        plt.xlabel( r"Resolution ($\AA^{-1}$)" )
         plt.ylabel( "Spectral Signal-to-Noise Ratio" )
         # Let's also display the class distributions in the legend
         
@@ -534,7 +534,7 @@ class ReliablePy(object):
         if self.verbose >= 2:
             plt.figure()
             plt.scatter( DefocusMean, part_GroupScaleCorrection, c=k_predict)
-            plt.xlabel( "Defocus ($\AA$)" )
+            plt.xlabel( r"Defocus ($\AA$)" )
             plt.ylabel( "Group scale correction (a.u.)" )
             plt.title("K-means on Defocus")
         
@@ -827,13 +827,13 @@ class ReliablePy(object):
         plt.figure()
         plt.fill_between( cDefocus, hDefocus, np.zeros(len(hDefocus)), facecolor='steelblue', alpha=0.5 )
         plt.plot( [defocusThreshold, defocusThreshold], [0, np.max(hDefocus)], "--", color='firebrick' )
-        plt.xlabel( "Defocus, $C_1 (\AA)$" )
+        plt.xlabel( r"Defocus, $C_1 (\AA)$" )
         plt.ylabel( "Histogram counts" )
         
         plt.figure()
         plt.fill_between( cAstig, hAstig, np.zeros(len(hAstig)), facecolor='forestgreen', alpha=0.5 )
         plt.plot( [astigThreshold, astigThreshold], [0, np.max(hAstig)], "--", color='firebrick' )
-        plt.xlabel( "Astigmatism, $A_1 (\AA)$" )
+        plt.xlabel( r"Astigmatism, $A_1 (\AA)$" )
         plt.ylabel( "Histogram counts" )
         
         plt.figure()
@@ -845,7 +845,7 @@ class ReliablePy(object):
         plt.figure()
         plt.fill_between( cRes, hRes, np.zeros(len(hRes)), facecolor='purple', alpha=0.5 )
         plt.plot( [resThreshold, resThreshold], [0, np.max(hRes)], "--", color='firebrick' )
-        plt.xlabel( "Fitted Resolution, $r (\AA)$" )
+        plt.xlabel( r"Fitted Resolution, $r (\AA)$" )
         plt.ylabel( "Histogram counts" )
         
         
diff --git a/mrcz/ioMRC.py b/mrcz/ioMRC.py
index 998de75..05d7376 100644
--- a/mrcz/ioMRC.py
+++ b/mrcz/ioMRC.py
@@ -216,7 +216,7 @@ def _getMRCZVersion(label):
 def readMRC(MRCfilename, idx=None, endian='le', 
             pixelunits=u'\\AA', fileConvention='ccpem', 
             useMemmap=False, n_threads=None, slices=None):
-    '''
+    r'''
     Imports an MRC/Z file as a NumPy array and a meta-data dict.  
     
     Parameters
@@ -552,9 +552,9 @@ def readMRCHeader(MRCfilename, slices=None, endian='le', fileConvention = 'ccpem
         header['pixelunits'] = pixelunits
             
         # '\AA' will eventually be deprecated, please cease using it.
-        if header['pixelunits'] == u'\\AA' or header['pixelunits'] == u'\AA':
+        if header['pixelunits'] == r'\\AA' or header['pixelunits'] == r'\AA':
             pass
-        elif header['pixelunits'] == u'\mum':
+        elif header['pixelunits'] == r'\mum':
             header['pixelsize'] *= 1E-5
         elif header['pixelunits'] == u'pm':
             header['pixelsize'] *= 100.0
@@ -602,7 +602,7 @@ def writeMRC(input_image, MRCfilename, meta=None, endian='le', dtype=None,
              pixelsize=[0.1,0.1,0.1], pixelunits=u'\\AA', shape=None, 
              voltage=0.0, C3=0.0, gain=1.0, compressor=None, clevel=1, 
              n_threads=None, quickStats=True, idx=None):
-    '''
+    r'''
     Write a conventional MRC file, or a compressed MRCZ file to disk.  If 
     compressor is ``None``, then backwards compatibility with other MRC libraries
     should be preserved.  Other libraries will not, however, recognize 
@@ -1047,9 +1047,9 @@ def writeMRCHeader(f, header, slices, endchar='<'):
 
     # Print cellsize = pixelsize * dimensions
     # '\AA' will eventually be deprecated (probably in Python 3.7/8), please cease using it.
-    if header['pixelunits'] == '\\AA' or header['pixelunits'] == '\AA':
+    if header['pixelunits'] == r'\\AA' or header['pixelunits'] == r'\AA':
         AApixelsize = np.array(header['pixelsize'])
-    elif header['pixelunits'] == '\mum':
+    elif header['pixelunits'] == r'\mum':
         AApixelsize = np.array(header['pixelsize'])*10000.0
     elif header['pixelunits'] == 'pm':
         AApixelsize = np.array(header['pixelsize'])/100.0
@@ -1190,4 +1190,4 @@ def asyncWriteMRC(*args, **kwargs):
             time.sleep(0.001)
         # File is written to disk
     '''
-    return _asyncExecutor.submit(writeMRC, *args, **kwargs)
\ No newline at end of file
+    return _asyncExecutor.submit(writeMRC, *args, **kwargs)
diff --git a/mrcz/test_mrcz.py b/mrcz/test_mrcz.py
index 30165fd..f2f0070 100644
--- a/mrcz/test_mrcz.py
+++ b/mrcz/test_mrcz.py
@@ -63,18 +63,18 @@ class PythonMrczTests(unittest.TestCase):
         pixelsize = np.array([1.2, 2.6, 3.4])
 
         mrcz.writeMRC(testMage, mrcName, dtype=casttype,
-                           pixelsize=pixelsize, pixelunits=u'\AA',
+                           pixelsize=pixelsize, pixelunits=r'\AA',
                            voltage=300.0, C3=2.7, gain=1.05,
                            compressor=compressor, clevel=clevel)
         
-        rereadMage, rereadHeader = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, rereadHeader = mrcz.readMRC(mrcName, pixelunits=r'\AA')
         #  `tempfile.TemporaryDirectory` would be better but Python 2.7 doesn't support it
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
         
         npt.assert_array_almost_equal(testMage, rereadMage)
         npt.assert_array_almost_equal(rereadHeader['pixelsize'], pixelsize)
-        assert(rereadHeader['pixelunits'] == u'\AA')
+        assert(rereadHeader['pixelunits'] == r'\AA')
         npt.assert_almost_equal(rereadHeader['voltage'], 300.0)
         npt.assert_almost_equal(rereadHeader['C3'], 2.7)
         npt.assert_almost_equal(rereadHeader['gain'], 1.05)
@@ -146,11 +146,11 @@ class PythonMrczTests(unittest.TestCase):
         pixelsize = [1.2, 5.6, 3.4]
         
         mrcz.writeMRC(testMage, mrcName, meta=meta,
-                        pixelsize=pixelsize, pixelunits=u'\AA',
+                        pixelsize=pixelsize, pixelunits=r'\AA',
                         voltage=300.0, C3=2.7, gain=1.05,
                         compressor='zstd', clevel=1, n_threads=1)
                             
-        rereadMage, rereadHeader = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, rereadHeader = mrcz.readMRC(mrcName, pixelunits=r'\AA')
 
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -163,7 +163,7 @@ class PythonMrczTests(unittest.TestCase):
         npt.assert_array_almost_equal(testMage, rereadMage)
         npt.assert_almost_equal(rereadHeader['voltage'], 300.0)
         npt.assert_array_almost_equal(rereadHeader['pixelsize'], pixelsize)
-        assert(rereadHeader['pixelunits'] == u'\AA')
+        assert(rereadHeader['pixelunits'] == r'\AA')
         npt.assert_almost_equal(rereadHeader['C3'], 2.7)
         npt.assert_almost_equal(rereadHeader['gain'], 1.05)
 
@@ -175,13 +175,13 @@ class PythonMrczTests(unittest.TestCase):
         pixelsize = [1.2, 5.6, 3.4]
         
         worker = mrcz.asyncWriteMRC(testMage, mrcName, meta=meta,
-                                pixelsize=pixelsize, pixelunits=u'\AA',
+                                pixelsize=pixelsize, pixelunits=r'\AA',
                                 voltage=300.0, C3=2.7, gain=1.05,
                                 compressor='zstd', clevel=1, n_threads=1)
                                 
         worker.result() # Wait for write to finish
 
-        worker = mrcz.asyncReadMRC(mrcName, pixelunits=u'\AA')
+        worker = mrcz.asyncReadMRC(mrcName, pixelunits=r'\AA')
         rereadMage, rereadHeader = worker.result()
 
         try: os.remove(mrcName)
@@ -195,7 +195,7 @@ class PythonMrczTests(unittest.TestCase):
         npt.assert_array_almost_equal(testMage, rereadMage)
         npt.assert_almost_equal(rereadHeader['voltage'], 300.0)
         npt.assert_array_almost_equal(rereadHeader['pixelsize'], pixelsize)
-        assert(rereadHeader['pixelunits'] == u'\AA')
+        assert(rereadHeader['pixelunits'] == r'\AA')
         npt.assert_almost_equal(rereadHeader['C3'], 2.7)
         npt.assert_almost_equal(rereadHeader['gain'], 1.05)
 
@@ -208,7 +208,7 @@ class PythonMrczTests(unittest.TestCase):
         pixelsize = [5.6, 3.4]
         mrcz.writeMRC(testMage, mrcName, pixelsize=pixelsize, compressor=None)
                                 
-        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA')
 
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -229,7 +229,7 @@ class PythonMrczTests(unittest.TestCase):
         mrcz.writeMRC(testMage, mrcName, pixelsize=pixelsize, 
                                 compressor='zstd', clevel=1, n_threads=1)
                                 
-        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA')
 
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -248,7 +248,7 @@ class PythonMrczTests(unittest.TestCase):
 
         mrcz.writeMRC(testMage, mrcName, pixelsize=pixelsize, compressor=None)   
 
-        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA')
 
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -268,7 +268,7 @@ class PythonMrczTests(unittest.TestCase):
         mrcz.writeMRC(testMage, mrcName, pixelsize=pixelsize, 
                                 compressor='zstd', clevel=1, n_threads=1)
                                 
-        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA')
 
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -290,7 +290,7 @@ class PythonMrczTests(unittest.TestCase):
             mrcz.writeMRC(testMage, mrcName, pixelsize=pixelsize, 
                                     compressor=None)
                                     
-            rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA', slices=slices)
+            rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA', slices=slices)
 
             try: os.remove(mrcName)
             except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -308,7 +308,7 @@ class PythonMrczTests(unittest.TestCase):
             mrcz.writeMRC(testMage, mrcName, pixelsize=pixelsize, 
                                     compressor='zstd', clevel=1, n_threads=1)
                                     
-            rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA', slices=slices)
+            rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA', slices=slices)
 
             try: os.remove(mrcName)
             except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -444,7 +444,7 @@ class PythonMrczTests(unittest.TestCase):
         for j,I in enumerate(f32_stack):
             mrcz.writeMRC(I, mrcName, pixelsize=pixelsize, compressor=None, idx = j)
                                 
-        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=u'\AA')
+        rereadMage, _ = mrcz.readMRC(mrcName, pixelunits=r'\AA')
 
         try: os.remove(mrcName)
         except IOError: log.info('Warning: file {} left on disk'.format(mrcName))
@@ -484,14 +484,14 @@ else:
             pixelsize = [1.2, 2.6, 3.4]
         
             mrcz.writeMRC(testMage, mrcInput,
-                                    pixelsize=pixelsize, pixelunits=u'\AA',
+                                    pixelsize=pixelsize, pixelunits=r'\AA',
                                     voltage=300.0, C3=2.7, gain=1.05,
                                     compressor=compressor)
                                  
             sub.call(cmrczProg + ' -i %s -o %s -c %s -B %d -l %d' 
                 %(mrcInput, mrcOutput, compressor, blocksize, clevel), shell=True)
             
-            rereadMage, rereadHeader = mrcz.readMRC(mrcOutput, pixelunits=u'\AA')
+            rereadMage, rereadHeader = mrcz.readMRC(mrcOutput, pixelunits=r'\AA')
             
             os.remove(mrcOutput)
             os.remove(mrcInput)
@@ -502,7 +502,7 @@ else:
             npt.assert_array_almost_equal(testMage, rereadMage)
             npt.assert_array_equal(rereadHeader['voltage'], 300.0)
             npt.assert_array_almost_equal(rereadHeader['pixelsize'], pixelsize)
-            npt.assert_array_equal(rereadHeader['pixelunits'], u'\AA')
+            npt.assert_array_equal(rereadHeader['pixelunits'], r'\AA')
             npt.assert_array_equal(rereadHeader['C3'], 2.7)
             npt.assert_array_equal(rereadHeader['gain'], 1.05)
             
