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

পাইথনে ডেটা হাইডিং (Data Hiding)

একটি অবজেক্টের অ্যাট্রিবিউট ক্লাসের বাইরে দৃশ্যমান হতে পারে বা নাও হতে পারে। অ্যাট্রিবিউটের নামের আগে ডাবল আন্ডারস্কোর (__) প্রিফিক্স ব্যবহার করলে সেগুলো বাহিরের দৃষ্টি থেকে সরাসরি অদৃশ্য হয়ে যায়।

উদাহরণ

#!/usr/bin/python
class JustCounter:
    __secretCount = 0
    def count(self):
        self.__secretCount += 1
        print self.__secretCount

counter = JustCounter()
counter.count()
counter.count()
print counter.__secretCount

আউটপুট

1
2
Traceback (most recent call last):
  File "test.py", line 12, in 
    print counter.__secretCount
AttributeError: JustCounter instance has no attribute '__secretCount'

পাইথন ক্লাসের নাম অন্তর্ভুক্ত করে ইন্টারন্যালি নাম পরিবর্তন করে এই সদস্যদের রক্ষা করে। আপনি এই অ্যাট্রিবিউটগুলো object._className__attrName হিসেবে অ্যাক্সেস করতে পারেন। আপনার শেষ লাইনটি নিচের মতো পরিবর্তন করলে কাজ করবে:

print counter._JustCounter__secretCount

আউটপুট

1
2
2
  1. পাইথন: Bokeh লাইব্রেরি দিয়ে ডেটা ভিজ্যুয়ালাইজেশন

  2. পাইথনে স্ট্যাটিস্টিক্যাল থিংকিং (Statistical Thinking)

  3. পাইথনে কাস্টমার চার্ন প্রিডিকশন (Predicting Customer Churn)

  4. পাইথনে সেন্সাস ডেটা অ্যানালাইসিস (Analyzing Census Data)