কম্পিউটার টিউটোরিয়াল

পাইথনে ইমপোর্টেড মডিউলের গ্লোবাল ভেরিয়েবলের দৃশ্যমানতা

নियम

পাইথনে গ্লোবাল ভেরিয়েবল মডিউল-লেভেলে গ্লোবাল, সব মডিউল জুড়ে নয় (C-র মত নয়)।

উদাহরণ: মডিউল অ্যাট্রিবিউট হিসেবে সেট করা

# module1.py
a = 10

# main.py
import module1
module1.a = 3  # module1-এর গ্লোবাল 'a' পরিবর্তন
print(module1.a)  # 3

শেয়ার্ড কনফিগারেশন প্যাটার্ন (সার্বিক গ্লোবালের জন্য)

একাধিক মডিউলে শেয়ার করতে আলাদা মডিউল ব্যবহার করুন:

# global_module.py
var = 0

# module1.py
import global_module
def fun():
    print(global_module.var)

# main.py
import global_module
import module1
global_module.var = 3
module1.fun()  # আউটপুট: 3

সর্বোত্তম অভ্যাস

  • গ্লোবাল স্টেট কম से কম রাখুন।
  • শেয়ার্ড ডেটার জন্য ডেডিকেটেড কনফিগ/সেটিংস মডিউল ব্যবহার করুন।
  • মডিউল-লেভেল গ্লোবাল পরিবর্তন করলে সাইড-ইফেক্ট হতে পারে - সাবধান থাকুন।
  1. সিবর্নে hue দিয়ে দুটি ক্যাটাগরিক্যাল ভেরিয়েবলে সুয়ার্ম প্লট গ্রুপ করা

  2. পাইথনে Matplotlib প্লটের Анатомি (Anatomy) ব্যাখ্যা

  3. পাইথন গ্লোবাল ইন্টারপ্রেটার লক (GIL) কী এবং কেন এটি 아직도 আছে?

  4. পাইথনে গ্লোবাল এবং লোকাল ভেরিয়েবলের পার্থক্য