Python-3.4.3/C4/Handling-Errors-and-Exceptions/Bengali

From Script | Spoken-Tutorial
Revision as of 21:24, 1 June 2020 by Kaushik Datta (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:01 Handling errors and exceptions এর স্পোকেন টিউটোরিয়ালে আপনাদের স্বাগত।
00:07 এই টিউটোরিয়ালে আমরা errors এবং exceptions সম্পর্কে শিখব।
00:14 errors এবং exceptions পরিচালনা করা শিখব।
00:17 টিউটোরিয়ালটি রেকর্ড করতে ব্যবহার করছি উবুন্টু লিনাক্স 16.04 অপারেটিং সিস্টেম
00:25 Python 3.4.3 এবং IPython 5.1.0
00:32 টিউটোরিয়ালটি অনুশীলন করতে, আপনার জানা উচিত যে ফাংশন কিভাবে ব্যবহার করে এবং testing এবং debugging কিভাবে কার্যান্বিত করে।
00:43 না হলে এই ওয়েবসাইটে সম্পর্কিত Python টিউটোরিয়াল দেখুন।
00:48 Python এ দুটি ধরণের এরর রয়েছে: syntax errors এবং exceptions
00:57 Syntax errors ভুল ব্যবহারের কারণে ঘটে এবং এগুলি parser দ্বারা সনাক্ত করা হয়।
01:04 উদাহরণস্বরূপ: if True print বন্ধনীতে ডাবল উদ্ধৃতিতে done
01:11 এটি Syntax Error দেয় কারণ True এর পর colon অনুপস্থিত।
01:17 Exception একটি এরর যা কোনো প্রোগ্রাম কার্যকর করার সময় ঘটে।
01:23 Python exception উত্পন্ন করে যা সামলানো যেতে পারে, যা প্রোগ্রামকে ক্রাশ করতে এড়িয়ে যায়।
01:30 উদাহরণস্বরূপ: 1/0

এটি ZeroDivisionError exception দেবে।

01:37 আমরা এই উদাহরণগুলিতে কাজ করি। টার্মিনালটি খুলুন।
01:43 ipython3 লিখুন এবং এন্টার টিপুন।
01:48 এখান থেকে টার্মিনালে প্রতিটি কমান্ড লেখার পর এন্টার কী টিপতে ভুলবেন না।
01:55 এখন লিখুন if True print বন্ধনীতে ডাবল উদ্ধৃতিতে done
02:03 আউটপুট SyntaxError দেখায়।
02:06 এটি লাইনে সবচেয়ে শুরুর বিন্দুতে একটি অ্যারো প্রদর্শন করে। যেখানে error এর সন্ধান করা হয়েছিল।
02:13 আমাদের ক্ষেত্রে If এ True এর পর কোলন অনুপস্থিত তাই এরর ঘটে।
02:20 এখন লিখুন, 1/0

Python একটি ZeroDivisionError নামে exception দেয়।

02:29 expression বাক্যবিন্যাস সঠিক হলেও আমরা কোনো সংখ্যাকে শূন্য দ্বারা ভাগ করতে পারি না।
02:36 Exception programming language দ্বারা রিপোর্ট করা একটি বিশেষ ধরণের ব্যর্থতা।
02:42 এখন দেখি যে কীভাবে প্রোগ্রামে হওয়া Exceptions থেকে কিভাবে মোকাবেলা করা যায়।
02:48 লিখুন a = input বন্ধনীতে ডাবল উদ্ধৃতিতে Enter an integer.
02:57 আমি ইনপুট হিসাবে ac লিখব। এখন লিখুন num is equal to int বন্ধনীতে a
03:07 আপনি এই কোড রান করলে, এটি ValueError Exception দেয়। এটির কারণ হল আমরা string কে integer এ রূপান্তর করার চেষ্টা করছি।
03:17 সুতরাং এখন আমরা exceptions ধরতে পারি এবং এটি পরিচালনা করতে কোড লিখি। এইজন্য আমাদের Python এ try এবং except clause রয়েছে।
03:27 এখানে try....except...else blocks এর সিনট্যাক্স। প্রথমে, try এবং except keywords এর মাঝের স্টেটমেন্ট কার্যকর করা হয়।
03:38 স্টেটমেন্টের কারণে কোনো exception না ঘটলে except clause বাদ দেওয়া হয়।
03:44 স্টেটমেন্টের কারণে কোনো exception ঘটলে except clause নিষ্পাদিত হয় যদি exception নাম মেলে।
03:52 এবং execution, try statement এর পর চলতে থাকে।
03:57 কোড else-block এ নিষ্পাদিত হয় যদি try: block এ কোড exception কে প্রস্তুত না করে।
04:05 যেমন দেখানো হয়েছে লিখুন। ইনপুট হিসাবে ac দিন।
04:12 এখন আমরা try এবং except blocks লিখব।
04:16 আউটপুট পেতে দুইবার এন্টার টিপুন।
04:20 পূর্ববর্তী উদাহরণে, আমরা একটি সমস্যার মুখোমুখি হয়েছিলাম কারণ আমরা string ac কে integer এ রূপান্তর করার চেষ্টা করেছি।
04:28 এখানে ইন্টিজারে string value এর রূপান্তরকরণ try block এর ভিতরে দেওয়া হয়।
04:34 ValueError exception উত্থাপিত হয় এবং তাই আউটপুট হিসাবে Wrong input প্রদর্শিত হয়।
04:41 পূর্ববর্তী উদাহরণে, আমরা খুঁজে বের করেছিলাম যে এররের কারণ কি এবং তারপর এটির সমাধান সম্পর্কে ভেবেছি। এই সম্পূর্ণ প্রক্রিয়াটিকে debugging বলে।
04:53 এখন আমরা else clause সহ try except স্টেটমেন্টে আরেকটি কেস দেখব।
04:59 আমাদের আগের কোডটি কিছুটা পরিবর্তন করুন। যেমন দেখানো হয়েছে লিখুন।

আমি ইনপুট হিসাবে 23 দেয়।

05:10 এখন যেমন দেখানো হয়েছে লিখুন। এই try… except স্টেটমেন্টে একটি বৈকল্পিক else clause রয়েছে।
05:20 এটি উপযোগী যদি try clause exception প্রস্তুত না করে।
05:25 debugging করার আরেকটি উদাহরণ দেখি। নিম্ন কোড সহ mymodule.py ফাইল বানান।
05:34 ভ্যারিয়েবল ‘i’ 0 থেকে 9 পর্যন্ত পুনরাবৃত্তি হয়।
05:39 এই কোড Ipython এ রান করি।

লিখুন from mymodule import test

test ওপেন এবং ক্লোস বন্ধনী

05:52 Interpreter আমাদের ZeroDivisionError দেয় কারণ সেখানে division by zero error রয়েছে।
05:59 ভ্যালু নির্ণয় করতে যা হল এররের কারণ, Percentage debug লিখুন।
06:06 কোড যা এররের কারণ হয়েছিল, একটি অ্যারো দ্বারা প্রদর্শিত হবে।
06:11 prompt ipdb তে পরিবর্তিত হয়েছে যা হল ipython debugger মোড।
06:18 এখানে এই debugger ব্যবহার করে আপনি আগের code block এ ভ্যারিয়েবল অ্যাক্সেস করতে পারেন।
06:24 আমরা ভ্যারিয়েবলের ভ্যালু যাচাই করে দেখতে পারি যে কি ভুল হয়েছে।
06:29 উদাহরণস্বরূপ, i লিখলে আমরা আউটপুট হিসাবে 5 পাই।
06:36 এর মানে হল i এর ভ্যালু যখন 5 হয় তখন এরর ঘটে।
06:42 ipdb prompt থেকে প্রস্থান করতে q টিপুন এবং এন্টার টিপুন।
06:48 এটি আমাদের টিউটোরিয়ালের শেষে নিয়ে আসে। সংক্ষেপে...
06:54 এই টিউটোরিয়ালে আমরা নিম্ন সম্পর্কে শিখেছি Errors এবং exceptions.
07:00 try এবং except ব্যবহার করে exception হ্যান্ডল করা। ipython এ debugging এর জন্য percentage debug ব্যবহার করা।
07:09 আপনার সমাধানের জন্য এখানে একটি স্ব মূল্যায়ন প্রশ্ন রয়েছে।

আপনি ipython এ debugger কিভাবে শুরু করেন?

07:17 এবং উত্তর হল, আমরা percentage debug লিখে ipython এ debugger শুরু করি।
07:25 সময়ের সাথে আপনার প্রশ্ন এই ফোরামে পোস্ট করুন।
07:29 এই ফোরামে Python সম্পর্কিত আপনার সাধারণ প্রশ্ন পোস্ট করুন।
07:34 FOSSEE দল TBC প্রকল্প সমন্বয় করে।
07:38 স্পোকেন টিউটোরিয়াল প্রকল্প ভারত সরকারের NMEICT, MHRD দ্বারা সমর্থিত। আরো জানতে এই লিঙ্কে যান।
07:49 আই আই টী বোম্বে থেকে আমি কৌশিক দত্ত বিদায় নিচ্ছি। অংশগ্রহনের জন্য ধন্যবাদ।

Contributors and Content Editors

Kaushik Datta