builtins মডিউল পাইথন ইন্টারপ্রেটার যেকোনো সময় শুরু হলে অটোমেটিক্যালি লোড হয়, যেটি হয় টপ-লেভেল এক্সিকিউশন এনভায়রনমেন্ট বা ইন্টারেক্টিভ সেশন। Object ক্লাস, যা সকল পাইথন অবজেক্টের বেস ক্লাস, এই মডিউলে সংজ্ঞায়িত। সকল বিল্ট-ইন ডেটা টাইপ ক্লাস যেমন নাম্বর, স্ট্রিং, লিস্ট ইত্যাদি এই মডিউলে সংজ্ঞায়িত। BaseException ক্লাসসহ সকল বিল্ট-ইন এক্সসেপশনও এখানে সংজ্ঞায়িত। আরো, সকল বিল্ট-ইন ফাংশনও built-ins মডিউলে সংজ্ঞায়িত।
যেহেতু এই মডিউল বর্তমান সেশনে অটোমেটিক্যালি ইম্পোর্ট হয়, সাধারণত এটি স্পষ্টভাবে ইম্পোর্ট করা হয় না। এক্সিকিউটেবল কোডে ব্যবহৃত সকল বিল্ট-ইন ফাংশন ডিফল্টভাবে built-ins মডিউল থেকে মনে করা হয়। উদাহরণস্বরূপ:
>>> len('hello')
5
এটি নিচের সাথে ইমপ্লিসিটলি সমতুল্য:
>>> import builtins
>>> builtins.len('hello')
5
তবে, এই মডিউলটি স্পষ্টভাবে ইম্পোর্ট করা প্রয়োজন হয় যখন একটি ইউজার-ডিফাইনড ফাংশনও বিল্ট-ইন ফাংশনের মতো একই নাম রাখে। পাইথন ইন্টারপ্রেটার ইউজার-ডিফাইনড ফাংশনকে উচ্চতর প্রাধান্য দেয়। অতএব, যদি কোডে ইউজার-ডিফাইনড এবং বিল্ট-ইন ফাংশন একই নামে থাকে, তবে saunders must be prefixed with built-ins module.
def len(string):
print('local len() function')
print('calling len() function in builtins module')
import builtins
l = builtins.len(string)
print('length:', l)
string = "Hello World"
len(string)
আউটপুট:
local len() function calling len() function in builtins module length: 11
অधিকাংশ মডিউল তাদের গ্লোবালসের অংশ হিসেবে __builtins__ নাম উপলব্ধ করে। __builtins__-এর মান সাধারণত হয় এই মডিউল অথবা এই মডিউলের __dict__ অ্যাট্রিবিউট।
>>> import math
>>> globals()
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': , '__spec__': None, '__annotations__': {}, '__builtins__': , 'math': }