mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	Simplify importib._resolve_name().
This commit is contained in:
		
							parent
							
								
									842c0f17eb
								
							
						
					
					
						commit
						625cd23da4
					
				
					 1 changed files with 5 additions and 11 deletions
				
			
		|  | @ -890,17 +890,11 @@ def __exit__(self, exc_type, exc_value, exc_traceback): | |||
| 
 | ||||
| def _resolve_name(name, package, level): | ||||
|     """Resolve a relative module name to an absolute one.""" | ||||
|     dot = len(package) | ||||
|     for x in range(level, 1, -1): | ||||
|         try: | ||||
|             dot = package.rindex('.', 0, dot) | ||||
|         except ValueError: | ||||
|             raise ValueError("attempted relative import beyond " | ||||
|                              "top-level package") | ||||
|     if name: | ||||
|         return "{0}.{1}".format(package[:dot], name) | ||||
|     else: | ||||
|         return package[:dot] | ||||
|     bits = package.rsplit('.', level-1) | ||||
|     if len(bits) < level: | ||||
|         raise ValueError('attempted relative import beyond top-level package') | ||||
|     base = bits[0] | ||||
|     return '{0}.{1}'.format(base, name) if name else base | ||||
| 
 | ||||
| 
 | ||||
| def _find_module(name, path): | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Brett Cannon
						Brett Cannon