| 
									
										
										
										
											2024-05-08 15:34:40 -04:00
										 |  |  | :mod:`!builtins` --- Built-in objects
 | 
					
						
							|  |  |  | =====================================
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-12-02 09:40:06 +00:00
										 |  |  | .. module:: builtins
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  |    :synopsis: The module that provides the built-in namespace.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-06-11 15:02:54 -04:00
										 |  |  | --------------
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | This module provides direct access to all 'built-in' identifiers of Python; for
 | 
					
						
							| 
									
										
										
										
											2024-10-21 08:36:27 +08:00
										 |  |  | example, ``builtins.open`` is the full name for the built-in function :func:`open`.
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | This module is not normally accessed explicitly by most applications, but can be
 | 
					
						
							|  |  |  | useful in modules that provide objects with the same name as a built-in value,
 | 
					
						
							|  |  |  | but in which the built-in of that name is also needed.  For example, in a module
 | 
					
						
							|  |  |  | that wants to implement an :func:`open` function that wraps the built-in
 | 
					
						
							|  |  |  | :func:`open`, this module can be used directly::
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-12-02 09:40:06 +00:00
										 |  |  |    import builtins
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |    def open(path):
 | 
					
						
							| 
									
										
										
										
											2007-12-02 09:40:06 +00:00
										 |  |  |        f = builtins.open(path, 'r')
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  |        return UpperCaser(f)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    class UpperCaser:
 | 
					
						
							| 
									
										
										
										
											2021-05-28 22:54:25 +02:00
										 |  |  |        '''Wrapper around a file that converts output to uppercase.'''
 | 
					
						
							| 
									
										
										
										
											2007-08-15 14:28:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |        def __init__(self, f):
 | 
					
						
							|  |  |  |            self._f = f
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |        def read(self, count=-1):
 | 
					
						
							|  |  |  |            return self._f.read(count).upper()
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |        # ...
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-11-26 12:08:19 +00:00
										 |  |  | As an implementation detail, most modules have the name ``__builtins__`` made
 | 
					
						
							|  |  |  | available as part of their globals.  The value of ``__builtins__`` is normally
 | 
					
						
							| 
									
										
										
										
											2016-06-18 03:57:31 +00:00
										 |  |  | either this module or the value of this module's :attr:`~object.__dict__` attribute.
 | 
					
						
							| 
									
										
										
										
											2010-11-26 12:08:19 +00:00
										 |  |  | Since this is an implementation detail, it may not be used by alternate
 | 
					
						
							|  |  |  | implementations of Python.
 | 
					
						
							| 
									
										
										
										
											2024-10-21 08:36:27 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | .. seealso::
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    * :ref:`built-in-consts`
 | 
					
						
							|  |  |  |    * :ref:`bltin-exceptions`
 | 
					
						
							|  |  |  |    * :ref:`built-in-funcs`
 | 
					
						
							|  |  |  |    * :ref:`bltin-types`
 |