কম্পিউটার

পাইথনে ডেটা লুকানো


একটি বস্তুর গুণাবলী শ্রেণী সংজ্ঞার বাইরে দৃশ্যমান হতে পারে বা নাও হতে পারে। আপনাকে ডবল আন্ডারস্কোর প্রিফিক্স সহ বৈশিষ্ট্যগুলির নাম দিতে হবে এবং সেই বৈশিষ্ট্যগুলি বাইরের লোকেদের কাছে সরাসরি দৃশ্যমান হবে না৷

উদাহরণ

#!/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 <module>
      print counter.__secretCount
AttributeError: JustCounter instance has no attribute '__secretCount'

পাইথন অভ্যন্তরীণভাবে ক্লাসের নাম অন্তর্ভুক্ত করার জন্য নাম পরিবর্তন করে সেই সদস্যদের রক্ষা করে। আপনি object._className__attrName এর মতো বৈশিষ্ট্যগুলি অ্যাক্সেস করতে পারেন। আপনি যদি আপনার শেষ লাইনটি নিম্নলিখিত হিসাবে প্রতিস্থাপন করেন, তাহলে এটি আপনার জন্য কাজ করে -

.........................
print counter._JustCounter__secretCount

উপরের কোডটি কার্যকর করা হলে, এটি নিম্নলিখিত ফলাফল তৈরি করে -

1
2
2

  1. পাইথন - বোকেহ ব্যবহার করে ডেটা ভিজ্যুয়ালাইজেশন

  2. পাইথনে পরিসংখ্যানগত চিন্তাভাবনা

  3. পাইথনে গ্রাহক মন্থনের পূর্বাভাস

  4. পাইথনে সেন্সাস ডেটা বিশ্লেষণ করা হচ্ছে