আপডেট: পাইথন ৩.7 হিসাবে সন্নিবেশ ক্রম বজায় রাখা হয়, সুতরাং আপনার OrderedDictএখানে কোনও দরকার নেই। আপনি সাধারণের সাথে নীচের পদ্ধতিগুলি ব্যবহার করতে পারেনdict
সংস্করণ 3.7 এ পরিবর্তিত হয়েছে: অভিধান ক্রম সন্নিবেশ ক্রমের গ্যারান্টিযুক্ত। এই আচরণটি সিপিথনের একটি বাস্তবায়ন বিবরণ ছিল 3.6 থেকে।
উৎস
পাইথন ৩.6 এবং তার আগের *
আপনি যদি নিয়মিত কথা বলছেন dictতবে "প্রথম কী" এর অর্থ কিছু নেই। কীগুলি কোনওভাবেই আপনি নির্ভর করতে পারেন যাতে অর্ডার করা হয় না। আপনি নিজের উপর পুনরাবৃত্তি যদি আপনি dictসম্ভবত "banana"প্রথম জিনিস হিসাবে পাবেন না ।
আপনার যদি জিনিসগুলিকে যথাযথভাবে রাখতে হয় তবে আপনাকে OrderedDictকেবল একটি সরল অভিধান ব্যবহার করতে হবে না।
import collections
prices = collections.OrderedDict([
("banana", 4),
("apple", 2),
("orange", 1.5),
("pear", 3),
])
এরপরে আপনি যদি সমস্ত কীগুলি ক্রম দেখতে চান তবে এর মাধ্যমে পুনরাবৃত্তি করে আপনি এটি করতে পারেন
for k in prices:
print(k)
আপনি বিকল্পভাবে সমস্ত কীগুলি একটি তালিকায় রাখতে পারেন এবং তারপরে এটি দিয়ে কাজ করতে পারেন
ks = list(prices)
print(ks[0]) # will print "banana"
তালিকা তৈরি না করেই প্রথম উপাদানটি পাওয়ার দ্রুততম উপায় nextহল পুনরুক্তিকারীকে কল করা। nthযদিও উপাদানটি পাওয়ার চেষ্টা করার সময় এটি সাধারণভাবে কার্যকর হয় না
>>> next(iter(prices))
'banana'
* সিপিথন 3..6-এ প্রয়োগের বিশদ হিসাবে সন্নিবেশ আদেশের গ্যারান্টিযুক্ত ছিল।