pzrq এর পোস্ট ব্যবহার করতে বলেছেন:
str(e)
এটি আমার প্রয়োজন ঠিক ছিল।
(আপনি যদি একটি ইউনিকোড পরিবেশে থাকেন তবে এটি প্রদর্শিত হয়:
unicode(e)
কাজ করবে, এবং এটি অ-ইউনিকোড পরিবেশে দুর্দান্ত কাজ করবে বলে মনে হচ্ছে)
Pzrq অন্যান্য অনেক ভাল জিনিস বলেছিলেন, তবে সমস্ত ভাল স্টাফের কারণে আমি তাদের উত্তর প্রায় মিস করেছি। যেহেতু আমার ৫০ টি পয়েন্ট নেই, আমি কার্যকর উত্তরটির দিকে মনোযোগ আকর্ষণ করার প্রয়াসে তাদের উত্তর সম্পর্কে মন্তব্য করতে পারি না এবং যেহেতু আমার 15 টি নেই আমি উত্তরটি ভোট দিতে পারি না, তবে আমি পোস্ট করতে পারি (পিছিয়ে পড়া অনুভব করি তবে ওহ ভাল) - সুতরাং এখানে আমি পোস্ট করছি - সম্ভবত এর জন্য পয়েন্ট হারাতে হবে ...
যেহেতু আমার বক্তব্যটি pzrq এর উত্তরের দিকে দৃষ্টি আকর্ষণ করা, তাই দয়া করে ঝলকানি না এবং নীচের সমস্তটিতে এটি মিস করবেন না। এই পোস্টের প্রথম কয়েকটি লাইন সর্বাধিক গুরুত্বপূর্ণ।
আমার গল্প:
আমি এখানে যে সমস্যার জন্য এসেছি তা হ'ল যদি আপনি কোনও শ্রেণীর ব্যতিক্রম ধরতে চান তবে আপনার নিয়ন্ত্রণ নেই - তবে কি ??? আমি অবশ্যই সমস্ত সম্ভাব্য ক্লাসগুলিতে সাবক্লাসে যাচ্ছি না যা আমার কোড ব্যবহার করে সমস্ত সম্ভাব্য ব্যাতিক্রমের বাইরে একটি বার্তা পেতে সক্ষম হওয়ার প্রয়াসে ব্যবহার করে!
আমি ব্যবহার করছিলাম:
except Exception as e:
print '%s (%s)' % (e.message,type(e))
যা আমরা এখন সবাই জানি, ওপি সম্পর্কে জিজ্ঞাসা করা সতর্কবার্তা দেয় (যা আমাকে এখানে এনেছে), এবং এটি, যা কাজটি করার উপায় হিসাবে pzrq দেয়:
except Exception as e:
print '%s (%s)' % (str(e),type(e))
না।
আমি কোনও ইউনিকোড পরিবেশে নেই, তবে জেজেসি-র উত্তর আমাকে অবাক করে দিয়েছে, তাই আমাকে এটি চেষ্টা করে দেখতে হয়েছিল। এই প্রসঙ্গে এটি হয়ে যায়:
except Exception as e:
print '%s (%s)' % (unicode(e),type(e))
যা আমার অবাক করে দিয়েছিল ঠিক (ঙ) এর মতো - তাই এখন আমি ব্যবহার করছি।
জানেন না যে 'স্ট্রিং (ই) / ইউনিকোড (ই)' অনুমোদিত পাইথন পথ ', এবং আমি সম্ভবত 3.0 এ পৌঁছানোর পরে কেন এটি ভাল নয় তা খুঁজে পেতে পারি, তবে একজন আশা করে যে একটি হ্যান্ডেল করার ক্ষমতা অপ্রত্যাশিত ব্যতিক্রম (*) মারা না গিয়ে এবং এখনও সেখান থেকে কিছু তথ্য পাবেন না ...
(*) হুম। "অপ্রত্যাশিত ব্যতিক্রম" - আমি মনে করি আমি কেবল তোতলা!