mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	Rewrite normcase() using string.translate...
This commit is contained in:
		
							parent
							
								
									efa683726f
								
							
						
					
					
						commit
						e2ad88c202
					
				
					 1 changed files with 6 additions and 14 deletions
				
			
		|  | @ -5,23 +5,15 @@ | |||
| import string | ||||
| 
 | ||||
| 
 | ||||
| # Normalize the case of a pathname. | ||||
| # On MS-DOS it maps the pathname to lowercase, turns slashes into | ||||
| # backslashes. | ||||
| # Other normalizations (such as optimizing '../' away) are not allowed | ||||
| # Normalize the case of a pathname and map slashes to backslashes. | ||||
| # Other normalizations (such as optimizing '../' away) are not done | ||||
| # (this is done by normpath). | ||||
| # Previously, this version mapped invalid consecutive characters to a  | ||||
| # single '_', but this has been removed.  This functionality should  | ||||
| # possibly be added as a new function. | ||||
| 
 | ||||
| _normtable = string.maketrans(string.uppercase + "\\/", | ||||
| 			      string.lowercase + os.sep * 2) | ||||
| 
 | ||||
| def normcase(s): | ||||
| 	res, s = splitdrive(s) | ||||
| 	for c in s: | ||||
| 		if c in '/\\': | ||||
| 			res = res + os.sep | ||||
| 		else: | ||||
| 			res = res + c | ||||
| 	return string.lower(res) | ||||
|     return string.translate(s, _normtable) | ||||
| 
 | ||||
| 
 | ||||
| # Return wheter a path is absolute. | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Guido van Rossum
						Guido van Rossum