একটি লাইব্রেরি ফাংশন রয়েছে যা তালিকায় / টুপলে বাইনারি অনুসন্ধান করে এবং যদি পাওয়া যায় তবে আইটেমের অবস্থান এবং 'মিথ্যা' (-1, কিছুই নয়) যদি না পাওয়া যায় তবে?
আমি দ্বিখণ্ডিত মডিউলে bisect_left / ডান ফাংশনগুলি পেয়েছি , তবে তারা আইটেম তালিকায় না থাকলেও তারা এখনও একটি অবস্থান ফিরে আসে। এটি তাদের উদ্দেশ্যযুক্ত ব্যবহারের জন্য পুরোপুরি ঠিক আছে, তবে আমি কেবলমাত্র একটি আইটেম তালিকায় রয়েছে কিনা তা জানতে চাই (কিছুই সন্নিবেশ করতে চাই না)।
আমি bisect_left
সেই অবস্থানটিতে থাকা আইটেমটি আমি যা অনুসন্ধান করছি তার সমান কিনা তা পরীক্ষা করার চেষ্টা করেছি, তবে এটি জটিল মনে হচ্ছে (এবং আমার তালিকার সংখ্যাটি সবচেয়ে বড় সংখ্যার চেয়ে বড় হতে পারে কি না তাও আমাকে পরীক্ষা করতে হবে)। যদি খুব ভাল পদ্ধতি থাকে তবে আমি এটি সম্পর্কে জানতে চাই।
সম্পাদনা করার জন্য আমার কী প্রয়োজন তা পরিষ্কার করতে: আমি সচেতন যে একটি অভিধান এর জন্য খুব ভাল উপযোগী হবে তবে আমি মেমরির ব্যবহার যতটা সম্ভব কম রাখার চেষ্টা করছি। আমার উদ্দেশ্য ব্যবহারটি এক ধরণের ডাবল-ওয়ে লুক-আপ টেবিল হবে। আমার কাছে টেবিলে মানগুলির একটি তালিকা রয়েছে এবং তাদের সূচকের ভিত্তিতে মানগুলি অ্যাক্সেস করতে আমার সক্ষম হওয়া দরকার। এবং আমি মানটি তালিকায় না থাকলে একটি নির্দিষ্ট মান বা কোনওটির সূচকটি সন্ধান করতে সক্ষম হতে চাই।
এর জন্য অভিধান ব্যবহার করা দ্রুততম উপায় হবে, তবে (প্রায়) মেমরির প্রয়োজনীয়তা দ্বিগুণ করবে।
আমি এই প্রশ্নটি ভাবছিলাম যে আমি পাইথন লাইব্রেরিতে কিছু উপেক্ষা করেছি something দেখে মনে হচ্ছে আমাকে নিজের কোড লিখতে হবে, মো যেমন পরামর্শ দিয়েছে।
np.searchsorted
তবে দরকারী। docs.scipy.org/doc/numpy/references/generated/…