কম্পিউটার

পাইথন:একটি ফাংশন থেকে একাধিক মান ফেরত দিন

আপনি সেই মানগুলিকে একটি অভিধান, টিপল বা একটি তালিকায় বান্ডিল করে একাধিক মান ফেরত দিতে পারেন৷ এই ডেটা প্রকারগুলি আপনাকে একাধিক অনুরূপ মান সঞ্চয় করতে দেয়। আপনি আপনার প্রধান প্রোগ্রামে তাদের থেকে পৃথক মান বের করতে পারেন। অথবা, আপনি একাধিক মান পাস করতে পারেন এবং কমা দিয়ে আলাদা করতে পারেন।

পাইথন ফাংশন একাধিক মান ফেরত দিতে পারে। একাধিক মান ফেরত দিতে, আপনি একটি অভিধান, একটি পাইথন টিপল বা আপনার প্রধান প্রোগ্রামে একটি তালিকা ফেরত দিতে পারেন৷

এই দুটি পদ্ধতি ব্যবহার করে কিভাবে একটি প্রধান প্রোগ্রামে একাধিক মান ফিরিয়ে আনতে হয় এই নির্দেশিকাটি আলোচনা করে। চলুন শুরু করা যাক।

পাইথন:একাধিক মান ফেরত দিন

আপনি একটি Python ফাংশন থেকে একাধিক মান ফেরত দিতে পারেন:

ব্যবহার করে
  • একটি তালিকা যাতে একাধিক মান রয়েছে।
  • একাধিক মান সহ একটি টিপল।
  • একাধিক রেকর্ড সহ একটি অভিধান।
  • কমা দ্বারা পৃথক করা একাধিক মান।

উপরের সমস্ত ডেটা প্রকার আপনাকে একাধিক মান সঞ্চয় করতে দেয়। কমা দ্বারা পৃথক করা একাধিক মান ফেরত দেওয়ার সমাধানটি সবচেয়ে মার্জিত। কারণ এই পদ্ধতিটি আপনার অভিপ্রায়কে স্পষ্ট করে তোলে:আপনার মূল প্রোগ্রামে একাধিক পৃথক মান ফিরিয়ে আনতে।

একটি পাইথন রিটার্ন স্টেটমেন্ট একটি ফাংশন থেকে একটি প্রধান প্রোগ্রামে মান পাঠায়। এই বিবৃতিটি সাধারণত একটি প্রধান প্রোগ্রামে একটি মান ফিরিয়ে দিতে ব্যবহৃত হয়। এটি একটি প্রধান প্রোগ্রামে একাধিক মান ফেরত দিতে ব্যবহার করা যেতে পারে।

পাইথন:কমা সহ একাধিক মান ফেরত দিন

আপনি কমা দিয়ে যে মানগুলি ফেরত দিতে চান তা আলাদা করে আপনি একাধিক মান ফেরত দিতে পারেন। এই মানগুলি আপনার পাইথন রিটার্ন স্টেটমেন্টের পরে উপস্থিত হওয়া উচিত।

আমরা একটি প্রোগ্রাম লিখতে যাচ্ছি যা একটি ইলেকট্রনিক্স দোকানে বিক্রয়ের সংখ্যা গণনা করে। আমরা শুধুমাত্র $500 এর বেশি মূল্যের বিক্রয় গণনা করতে যাচ্ছি। আমাদের প্রোগ্রাম প্রতিটি বিক্রয়ের গড় মূল্যও গণনা করবে।

81% অংশগ্রহণকারী বলেছেন যে তারা বুটক্যাম্পে যোগ দেওয়ার পরে তাদের প্রযুক্তিগত কাজের সম্ভাবনা সম্পর্কে আরও আত্মবিশ্বাসী বোধ করেছেন। আজই একটি বুটক্যাম্পের সাথে মিলিত হন৷

গড় বুটক্যাম্প গ্র্যাড একটি বুটক্যাম্প শুরু করা থেকে শুরু করে তাদের প্রথম চাকরি খোঁজা পর্যন্ত ক্যারিয়ারের পরিবর্তনে ছয় মাসেরও কম সময় কাটিয়েছে।

শুরু করতে, আসুন একটি পাইথন অ্যারে সংজ্ঞায়িত করি যাতে বিক্রয়ের একটি তালিকা রয়েছে:

বিক্রয় =[59.99, 240.00, 655.25, 75.99]

এরপরে, একটি পাইথন ফাংশন লিখুন যা $500-এর বেশি মূল্যের বিক্রয়ের সংখ্যা এবং একটি ক্রয়ের গড় মূল্য গণনা করে:

def calculate_data(sales):over_limit =0 s বিক্রয়ের জন্য:যদি s> 500:over_limit +=1 গড়_ক্রয় =যোগফল(বিক্রয়) / লেন্স(বিক্রয়) অতিরিক্ত_সীমা, গড়_ক্রয়

আমাদের ফাংশন লুপ ব্যবহার করে আমাদের তালিকার প্রতিটি বিক্রয়ের উপর পুনরাবৃত্তি করে। যদি একটি বিক্রয় মূল্য $500-এর বেশি হয়, তাহলে আমাদের "ওভার_লিমিট" পাইথন ভেরিয়েবল এক দ্বারা বৃদ্ধি পাবে। তারপরে আমরা সমস্ত বিক্রয়ের মোট মূল্যকে বিক্রয়ের সংখ্যা দ্বারা ভাগ করে একটি ক্রয়ের গড় মূল্য গণনা করি৷

আমাদের ফাংশন শেষে, আমাদের প্রধান প্রোগ্রামে "ওভার_লিমিট" এবং "গড়_ক্রয়" এর মানগুলি ফেরত দিতে একটি রিটার্ন স্টেটমেন্ট ব্যবহার করুন।

যা করা বাকি আছে তা হল আমাদের ফাংশনকে কল করা এবং কনসোলে আমাদের প্রোগ্রামের গণনা করা ডেটা প্রদর্শন করা:

over_limit, average_purchase =calculate_data(sales)print("{} বিক্রয় $500 এর বেশি হয়েছে। গড় ক্রয় ছিল ${}.".format(over_limit, round(average_purchase)))

আমরা বৃত্তাকার() ব্যবহার করে গড় ক্রয়কে দুই দশমিক স্থানে রাউন্ড করি পদ্ধতি আমাদের কোড আমাদের গণনা করা মান সম্পর্কে আমাদের অবহিত করে একটি বার্তা প্রিন্ট করে। চলুন আমাদের প্রোগ্রাম চালাই:

<প্রে>১টি বিক্রয় $500-এর বেশি হয়েছে। গড় ক্রয় ছিল $258৷৷

আমাদের প্রোগ্রাম সফলভাবে আমাদের জানায় যে কতগুলি বিক্রয় $500-এর বেশি মূল্যের হয়েছে এবং একটি ক্রয়ের গড় মূল্য কত ছিল৷

এই কোডটি কাজ করে কারণ "রিটার্ন" বিবৃতিটি আমাদের মানকে একটি টিপলে পরিণত করে এবং আমাদের প্রধান প্রোগ্রামে একটি টিপল তালিকা প্রদান করে। তারপরে আমরা এই টিপলটিকে কোডের এই লাইনে দুটি ভেরিয়েবলে আনপ্যাক করি:

ওভার_সীমা, গড়_ক্রয় =গণনা_ডেটা(বিক্রয়)

পাইথন:একটি তালিকা বা Tuple সহ একাধিক মান ফেরত দিন

উভয় তালিকা এবং টিপল আপনাকে একাধিক মান সঞ্চয় করতে দেয়। এর মানে হল আমরা আমাদের মূল প্রোগ্রামে একাধিক মান ফেরত দিতে তাদের ব্যবহার করতে পারি।

একটি তালিকা বা একটি টিপল ব্যবহার করা ভাল যদি আপনি যে মানগুলি ফেরত দিচ্ছেন সেগুলির মধ্যে কোনও ধরণের সম্পর্ক থাকে৷ তবে, আপনি এই পদ্ধতিটি ব্যবহার করে মানগুলির যেকোনো সংগ্রহ ফিরিয়ে দিতে পারেন।

আমরা আমাদের মূল প্রোগ্রামে গড় ক্রয়ের আকার এবং $500 এর বেশি মূল্যের ক্রয়ের সংখ্যা ফেরত দিতে যাচ্ছি। এটি করার জন্য, আসুন আগের থেকে আমাদের উদাহরণটি দেখুন এবং একটি তালিকা ব্যবহার করতে একটি ছোট পরিবর্তন করুন:

def calculate_data(sales):over_limit =0 s বিক্রয়ের জন্য:যদি s> 500:over_limit +=1 average_purchase =sum(sales) / len(sales) return [over_limit, average_purchase]

আমরা আমাদের মানগুলিকে একক তালিকায় আলাদা করেছি। আমাদের তালিকায় যথাক্রমে $500 এর বেশি মূল্যের ক্রয়ের সংখ্যা এবং একটি গড় ক্রয়ের মূল্য রয়েছে৷

আমরা একটি টিপল ডেটা স্ট্রাকচারও ফিরিয়ে দিতে পারি। এটি করার জন্য, আমরা আমাদের বর্গাকার বন্ধনীগুলিকে কোঁকড়া বন্ধনী দিয়ে প্রতিস্থাপন করব। বিবেচনা করার জন্য বড় ফ্যাক্টর হল যে টিপলে ডুপ্লিকেট মান থাকতে পারে না। আপনার প্রধান প্রোগ্রামে পাস করা দুটি মান সমান হওয়ার সম্ভাবনা থাকলে, একটি টিপল ব্যবহার করা এড়িয়ে চলুন।

আমাদের প্রধান প্রোগ্রামে এই মানগুলি অ্যাক্সেস করার জন্য, আমাদের ইন্ডেক্সিং ব্যবহার করতে হবে:

values ​​=calculate_data(sales)print("{} বিক্রয় $500 এর বেশি হয়েছে। গড় ক্রয় ছিল ${}.".format(values[0], round(values[1])))

আমাদের calculate_data() ফাংশন রিটার্ন করে তালিকার প্রথম মান অ্যাক্সেস করতে আমরা মান[0] সিনট্যাক্স ব্যবহার করি। এটি আমাদের ফাংশনে "ওভার_লিমিট" এর মানের সাথে মিলে যায়। গড় ক্রয়ের মূল্য অ্যাক্সেস করতে আমরা মান [1] বাক্য গঠন ব্যবহার করি।

আমাদের কোড ফিরে আসে:

<প্রে>১টি বিক্রয় $500-এর বেশি হয়েছে। গড় ক্রয় ছিল $258৷৷

আমাদের কোড আমাদের শেষ উদাহরণের মতোই কাজ করে, কিন্তু এবার আমরা আমাদের কোডের মানগুলিকে আলাদা করতে একটি তালিকা ব্যবহার করেছি৷

পাইথন:একটি অভিধান সহ একাধিক মান ফেরত দিন

আমরা একটি অভিধান ব্যবহার করে একটি ফাংশন থেকে একাধিক মান ফেরত দিতে পারি৷

আমাদের শেষ উদাহরণে, আমরা আমাদের প্রধান প্রোগ্রামে শুধুমাত্র দুটি মান ফিরিয়ে দিয়েছি। এটি আনপ্যাকিং সিনট্যাক্স ব্যবহার করা সুবিধাজনক করেছে (যেখানে আপনি একাধিক ভেরিয়েবলে মান "আনপ্যাক" করেন)।

যদি আমরা আরও মান নিয়ে কাজ করি, তাহলে একটি অভিধান ফেরত দেওয়া সহজ হতে পারে যা প্রতিটি মানকে একটি লেবেলের সাথে সংযুক্ত করে। আমাদের মূল প্রোগ্রামে একাধিক মান ফেরত দিতে একটি অভিধান ব্যবহার করার জন্য আমাদের শেষ ফাংশনটি সংশোধন করা যাক:

def calculate_data(sales):over_limit =0 s বিক্রয়ের জন্য:যদি s> 500:over_limit +=1 average_purchase =sum(sales) / len(sales) return { "limit":over_limit, "গড়":গড়_ক্রয় }

আমাদের ফাংশন দুটি কী এবং মান সহ একটি অভিধান প্রদান করে। কী, "সীমা" এবং "গড়", প্রতিটি মানকে স্বতন্ত্রভাবে সনাক্ত করতে ব্যবহার করা যেতে পারে। এখন এই নতুন সিনট্যাক্সকে সমর্থন করার জন্য আমাদের ফাংশন কল এবং আমাদের মুদ্রণ বিবৃতি সংশোধন করতে হবে:

values ​​=calculate_data(sales)print("{} বিক্রয় $500 এর বেশি হয়েছে। গড় কেনাকাটা ছিল ${}.".format(values["limit"], round(values["Average"]))) 

আমরা আমাদের মূল প্রোগ্রামে ফিরে একটি অভিধান ফিরে. আমরা এই অভিধানটিকে পরিবর্তনশীল “মান”-এ বরাদ্দ করি। তারপর, আমরা "সীমা" এবং "গড়" এর মানগুলি পুনরুদ্ধার করতে ইন্ডেক্সিং ব্যবহার করি৷

চলুন আমাদের প্রোগ্রাম চালাই:

<প্রে>১টি বিক্রয় $500-এর বেশি হয়েছে। গড় ক্রয় ছিল $258৷৷

আমাদের প্রোগ্রাম আগের মত একই প্রতিক্রিয়া প্রদান করে. এটি প্রত্যাশিত কারণ আমরা যা করেছি তা পরিবর্তন করা হয়েছে যেভাবে আমরা আমাদের মূল প্রোগ্রামে মানগুলি ফেরত দিয়েছি। আমাদের গণনার যুক্তি একই থাকে।

উপসংহার

আপনি একটি অভিধান, একটি টিপল বা একটি তালিকা ব্যবহার করে একটি ফাংশন থেকে একাধিক মান ফেরত দিতে পারেন। এই সমস্ত ডেটা প্রকারগুলি আপনাকে একাধিক মান সঞ্চয় করতে দেয়। একাধিক মান ফেরত দেওয়ার জন্য কোনও নির্দিষ্ট বাক্য গঠন নেই, তবে এই পদ্ধতিগুলি একটি ভাল বিকল্প হিসাবে কাজ করে৷

কমা-বিভক্ত পদ্ধতিটি আরও সংক্ষিপ্ত এবং সহজে বোঝা যায় যদি আপনি মানগুলির একটি ছোট সেট নিয়ে কাজ করেন। বলুন আপনি একটি ফাংশন থেকে একটি বৃহত্তর পরিসরের মান ফেরত দিচ্ছেন। আপনি মূল প্রোগ্রামে একাধিক মান ফেরত পাঠাতে একটি অভিধান ব্যবহার করতে চাইতে পারেন।

আপনি কি পাইথন প্রোগ্রামিং ভাষা শেখার আপনার যাত্রা ত্বরান্বিত করতে চান? পাইথন কোর্স এবং অনলাইন শেখার সংস্থান সম্পর্কে পরামর্শের জন্য আমাদের পাইথন কীভাবে শিখবেন নির্দেশিকা দেখুন।


  1. কিভাবে পাইথন ফাংশন থেকে কোনটি ফেরত দেবেন না?

  2. কিভাবে পাইথন ফাংশন থেকে অকার্যকর ফিরে?

  3. পাইথন ফাংশন থেকে কিভাবে একটি json অবজেক্ট ফিরিয়ে আনবেন?

  4. কিভাবে একটি Python ফাংশন একটি ফাংশন ফেরত দিতে পারে?