একটি মন্তব্য থেকে:
আমি প্রতিটি সেট বাছাই করতে চাই।
এটা সহজ. যে কোনও সেট s(বা অন্য যেকোন কিছুতে পুনরাবৃত্তিযোগ্য) জন্য, সাজানো ক্রমের sorted(s)উপাদানগুলির একটি তালিকা প্রদান করে s:
>>> s = set(['0.000000000', '0.009518000', '10.277200999', '0.030810999', '0.018384000', '4.918560000'])
>>> sorted(s)
['0.000000000', '0.009518000', '0.018384000', '0.030810999', '10.277200999', '4.918560000']
নোট যে sortedআপনাকে একটি দিচ্ছে list, একটি নয় set। এর কারণ এটি একটি অঙ্কের পুরো বিন্দু, উভয়ই গণিতে এবং প্রায় প্রতিটি প্রোগ্রামিং ভাষায় , * এটি অর্ডার করা হয় না: সেটগুলি {1, 2}এবং {2, 1}একই সেট।
আপনি সম্ভবত এই উপাদানগুলিকে স্ট্রিং হিসাবে বাছাই করতে চান না, তবে সংখ্যা হিসাবে (সুতরাং 4.918560000 পরে আসার পরিবর্তে 10.277200999 এর আগে আসবে)।
সেরা সমাধানটি সম্ভবত প্রথম স্থানে স্ট্রিংয়ের পরিবর্তে সংখ্যা হিসাবে সংখ্যা সঞ্চয় করে। তবে তা না হলে আপনাকে কেবল একটি keyফাংশন ব্যবহার করতে হবে :
>>> sorted(s, key=float)
['0.000000000', '0.009518000', '0.018384000', '0.030810999', '4.918560000', '10.277200999']
আরও তথ্যের জন্য, সরকারী দস্তাবেজগুলিতে বাছাই করা হাওটো দেখুন ।
* ব্যতিক্রমগুলির জন্য মন্তব্যগুলি দেখুন।