python - সহজ - পাইথন প্রোগ্রামিং বই pdf download



পাইথন তালিকা বনাম অ্যারে-কখন ব্যবহার করবেন? (6)

আপনি যদি 1 ডি অ্যারে তৈরি করেন তবে আপনি এটি একটি তালিকা হিসাবে বাস্তবায়ন করতে পারেন, অথবা অন্যথায় স্ট্যান্ডার্ড লাইব্রেরির 'অ্যারে' মডিউলটি ব্যবহার করতে পারেন। আমি সবসময় 1 ডি অ্যারে জন্য তালিকা ব্যবহার করেছেন।

কারণ বা পরিস্থিতি যেখানে আমি পরিবর্তে অ্যারে মডিউল ব্যবহার করতে চান?

এটা কর্মক্ষমতা এবং মেমরি অপ্টিমাইজেশান জন্য, অথবা আমি সুস্পষ্ট কিছু অনুপস্থিত?

https://src-bin.com


Answer #1

এটি একটি বাণিজ্য বন্ধ!

প্রত্যেকের উত্স:

তালিকা

  • নমনীয়
  • ভিন্ন হতে পারে

অ্যারে (প্রাক্তন: numpy অ্যারে)

  • ইউনিফর্ম মান অ্যারে
  • সজাতি
  • কম্প্যাক্ট (আকারে)
  • দক্ষ (কার্যকারিতা এবং গতি)
  • সুবিধাজনক

Answer #2

Numpy অ্যারে এবং তালিকা মধ্যে একটি গুরুত্বপূর্ণ পার্থক্য হল যে অ্যারে টালি মূল অ্যারের উপর মতামত। এর মানে হল যে তথ্য অনুলিপি করা হয় না, এবং দর্শনের যে কোনও পরিবর্তন সোর্স অ্যারে প্রদর্শিত হবে।


Answer #3

অ্যারে শুধুমাত্র নির্দিষ্ট ধরনের জন্য ব্যবহার করা যেতে পারে, যখন তালিকা কোনো বস্তুর জন্য ব্যবহার করা যেতে পারে।

অ্যারেগুলি শুধুমাত্র এক ধরনের ডেটা থাকতে পারে, তবে একটি তালিকাতে বিভিন্ন বস্তুর প্রকারের এন্ট্রি থাকতে পারে।

অ্যারে কিছু সংখ্যাসূচক গণনার জন্য আরো দক্ষ।


Answer #4

আপনি যদি অ্যারে ব্যবহার করতে যাচ্ছেন তবে numpy বা scipy প্যাকেজগুলি বিবেচনা করুন যা আপনাকে অনেক বেশি নমনীয়তার সাথে অ্যারে দেয়।


Answer #5

প্রায় সব ক্ষেত্রে স্বাভাবিক তালিকা সঠিক পছন্দ। অ্যারে মডিউলটি সি অ্যারেগুলির উপর একটি পাতলা মোড়কের মতো, যা আপনাকে দৃঢ়ভাবে টাইপকৃত পাত্রে ( docs ), আরো সি-ধরনের ধরনের অ্যাক্সেস সহ, স্বাক্ষরিত / স্বাক্ষরিত স্বল্প বা দ্বিগুণ যা অ্যাক্সেসের অংশ নয় - ধরনের। আমি আপনাকে সত্যিই এটি প্রয়োজন হলে শুধুমাত্র অ্যারে মডিউল ব্যবহার করতে চাই, অন্য সব ক্ষেত্রে তালিকা সঙ্গে লাঠি।


Answer #6

মূলত, পাইথন তালিকাগুলি খুবই নমনীয় এবং সম্পূর্ণ বৈচিত্র্যপূর্ণ, নির্বিচারে তথ্য ধারণ করতে পারে এবং এগুলি এমটোরাইজড ধ্রুবক সময়ে খুব কার্যকরীভাবে যুক্ত করা যেতে পারে। আপনি আপনার তালিকা সময় সঙ্কুচিত এবং বৃদ্ধি প্রয়োজন-দক্ষতার সাথে এবং ঝগড়া ছাড়া, তারা যেতে উপায়। কিন্তু তারা সি অ্যারের চেয়ে অনেক বেশি স্থান ব্যবহার করে

অন্যদিকে, array.array টাইপ, সি অ্যারেগুলিতে কেবল একটি পাতলা মোড়ক। এটি শুধুমাত্র একক তথ্য ধারণ করতে পারে, সমস্ত একই ধরনের, এবং তাই এটি শুধুমাত্র sizeof(one object) * length মেমরির sizeof(one object) * length বাইট ব্যবহার করে। বেশিরভাগ ক্ষেত্রে, যখন আপনি একটি fctnl অ্যারে এক্সটেনশান বা একটি সিস্টেম কল (উদাহরণস্বরূপ, ioctl বা fctnl ) প্রকাশ করতে হবে তখন আপনাকে এটি ব্যবহার করতে হবে।

array.array এছাড়াও Python 2.x ( array('B', bytes) একটি পরিবর্তনযোগ্য স্ট্রিং উপস্থাপন করার একটি যুক্তিসঙ্গত উপায়। যাইহোক, পাইথন 2.6+ এবং 3.x একটি mutable বাইট স্ট্রিং bytearray হিসাবে bytearray

যাইহোক, যদি আপনি সংখ্যাসূচক ডেটা একটি সমষ্টিগত অ্যারে গণিত করতে চান, তবে আপনি NumPy ব্যবহার করে অনেক ভাল হয়ে যান, যা জটিল মাল্টি-মাত্রিক অ্যারেগুলিতে স্বয়ংক্রিয়ভাবে ক্রিয়াকলাপকে ভেক্টরাইজ করতে পারে।

একটি দীর্ঘ গল্প সংক্ষিপ্ত করতে : array.array যখন আপনি গণিত করছেন ব্যতীত অন্য একটি কারণে একটি সমতুল্য সি অ্যারের প্রয়োজন হলে দরকারী।





list