আমি এই প্রশ্নটির সঠিক উত্তরটি এখন বেশ কয়েকদিন ধরে অনুসন্ধান করেছিলাম তবে ভাল কিছু পাইনি। আমি প্রোগ্রামিংয়ে সম্পূর্ণ শিক্ষানবিশ নই, তবে এখনও মধ্যবর্তী স্তরেও নেই।
আমি যখন পাইথনের শেলটিতে থাকি, আমি টাইপ করি: dir()
এবং আমি বর্তমান স্কোপে (প্রধান ব্লক) সমস্ত বস্তুর নাম দেখতে পাচ্ছি, এর মধ্যে 6 টি রয়েছে:
['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']
তারপরে, যখন আমি কোনও ভেরিয়েবল ঘোষণা করি, উদাহরণস্বরূপ x = 10
, এটি স্বয়ংক্রিয়ভাবে বিল্ট-ইন মডিউলটির অধীনে অবজেক্টগুলির তালিকাগুলিতে যুক্ত হয় dir()
এবং যখন আমি dir()
আবার টাইপ করি , এটি এখন দেখায়:
['__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'x']
একই কাজ ফাংশন, ক্লাস এবং অন্যান্য জন্য।
শুরুতে যেখানে উপলব্ধ standard মান মুছে না ফেলে কীভাবে আমি এই সমস্ত নতুন অবজেক্ট মুছব?
আমি এখানে "মেমরি ক্লিনিং", "কনসোল পরিষ্কারের" সম্পর্কে পড়েছি, যা কমান্ড প্রম্পট উইন্ডো থেকে সমস্ত পাঠ মুছে ফেলেছে:
>>> import sys
>>> clear = lambda: os.system('cls')
>>> clear()
তবে আমি যা অর্জন করার চেষ্টা করছি তার সাথে এইগুলির কিছুই করার নেই, এটি সমস্ত ব্যবহৃত বস্তু পরিষ্কার করে না।
del
ফাংশন আছে। আমি, পাইথন শিখতে এবং প্রায়ই শেল মধ্যে পরীক্ষা আছে তাই ভালো মান পরিবর্তনশীল নামের শুরু করছি x
বা y
ইতিমধ্যে ব্যবহারে প্রায়ই এবং শেল পুনরায় চালু (আমি একটি খুব, খুব পুরানো ল্যাপটপ এখন আছে) করতে অন্য 15 সেকেন্ড সময় লাগে। তাই আমি পাইথন মেমরিটি আরও দ্রুত পরিষ্কার করার একটি উপায় খুঁজতে চাই।
del
ঠিক একটি ফাংশন, অত কোন নয় (
এবং )
। এটি একটি কীওয়ার্ড যা একটি বিবৃতি উপস্থাপন করে। অবশ্যই এটি কীভাবে কোনও বস্তুকে মুছে ফেলতে এতে ফাংশন জড়িত হতে পারে তবে এটি অন্য গল্প ...
x
বা y
ব্যবহার করা উচিত নয় । অথবা যদি আপনি নির্বোধের মতো কিছু না করেন তবে আপনি সমস্ত ধরণের আবর্জনা জায়গাটি বিশৃঙ্খলা করতে পাবেন। :)from _somemodule_ import *