একটি দাবী হল একটি বিবেক-পরীক্ষা যা আপনি আপনার প্রোগ্রামের পরীক্ষা শেষ করার পরে চালু বা বন্ধ করতে পারেন৷
একটি দাবী ভাবার সবচেয়ে সহজ উপায় হল এটিকে উত্থান-যদি এর সাথে তুলনা করা বিবৃতি (অথবা আরও সঠিক হতে, একটি বৃদ্ধি-যদি-না-বিবৃতি)। একটি অভিব্যক্তি পরীক্ষা করা হয়, এবং ফলাফল মিথ্যা হলে, একটি ব্যতিক্রম উত্থাপিত হয়।
দাবী করা হয় অ্যাসার্ট স্টেটমেন্ট, পাইথনের নতুন কীওয়ার্ড, সংস্করণ 1.5-এ প্রবর্তিত।
প্রোগ্রামাররা প্রায়ই বৈধ ইনপুট পরীক্ষা করার জন্য একটি ফাংশনের শুরুতে এবং একটি ফাংশন কলের পরে বৈধ আউটপুট পরীক্ষা করার জন্য দাবি রাখে।
অ্যাসার্ট স্টেটমেন্ট
যখন এটি একটি দাবীর বিবৃতির সম্মুখীন হয়, তখন পাইথন সহগামী অভিব্যক্তিটিকে মূল্যায়ন করে, যা আশা করা যায় সত্য। যদি অভিব্যক্তিটি মিথ্যা হয়, পাইথন একটি AssertionError ব্যতিক্রম উত্থাপন করে।
সিনট্যাক্স দাবীর জন্য হল −
<প্রে>অ্যাসার্ট এক্সপ্রেশন[, আর্গুমেন্টস]যদি দাবি ব্যর্থ হয়, পাইথন ArgumentExpression ব্যবহার করে AssertionError-এর জন্য আর্গুমেন্ট হিসেবে। AssertionError ব্যতিক্রমগুলি চেষ্টা-ব্যতীত বিবৃতি ব্যবহার করে অন্য যে কোনও ব্যতিক্রমের মতো ধরা এবং পরিচালনা করা যেতে পারে, তবে যদি পরিচালনা না করা হয় তবে তারা প্রোগ্রামটি বন্ধ করে দেবে এবং একটি ট্রেসব্যাক তৈরি করবে৷
উদাহরণ
এখানে একটি ফাংশন রয়েছে যা একটি তাপমাত্রাকে ডিগ্রী কেলভিন থেকে ডিগ্রী ফারেনহাইটে রূপান্তর করে। যেহেতু শূন্য ডিগ্রী কেলভিন যতটা ঠাণ্ডা হয়, তাই নেতিবাচক তাপমাত্রা দেখা গেলে ফাংশনটি বন্ধ হয়ে যায় −
#!/usr/bin/pythondef KelvinToFahrenheit(Temperature):assert (Temperature>=0), "পরম শূন্যের চেয়ে ঠান্ডা!" রিটার্ন ((Temperature-273)*1.8)+32print KelvinToFahrenheit(273)প্রিন্ট কেলভিনটোফারেনহাইট(505.78))প্রিন্ট কেলভিনটোফারেনহাইট(-5)
আউটপুট
উপরের কোডটি কার্যকর করা হলে, এটি নিম্নলিখিত ফলাফল তৈরি করে -
32.0451ট্রেসব্যাক (সর্বশেষ সাম্প্রতিক কল):ফাইল "test.py", লাইন 9,প্রিন্ট KelvinToFahrenheit(-5)ফাইল "test.py", লাইন 4, KelvinToFahrenheitassert এ (তাপমাত্রা>=0) "পরম শূন্যের চেয়ে ঠান্ডা!" দাবীর ত্রুটি:পরম শূন্যের চেয়ে ঠান্ডা!