🐍
পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজ
  • পাইথন প্রোগ্রামিং ল্যাংগুয়েজ
  • সূচি
  • ব্রিফ হিস্টোরি অফ পাইথন
  • অধ্যায়ঃ১ পাইথন বেসিক
    • ভ্যারিয়েবল
    • কন্সট্যান্টস
    • আইডেন্টিফাইয়ারস
    • নেমিং কনভেনশন
    • ইন্ডেনটেশন
    • কমেন্টস
    • ডক স্ট্রিংস
    • রিজার্ভড কি-ওয়ার্ডস
    • অপারেটরস
      • এরিথমেটিক অপারেটরস
      • রিলেশনাল অপারেটরস
      • লজিক্যাল অপারেটরস
      • বিট-ওয়াইজ অপারেটরস
      • অ্যাসাইনমেন্ট অপারেটরস
      • আইডেন্টিটি অপারেটরস
      • মেম্বারশিপ অপারেটরস
    • ইনপুট-আউটপুট
  • অধ্যায়ঃ ২ ডেটা টাইপ্স
    • জেনারেল টাইপ্স
      • ইন্টিগ্রাল
        • ইন্টিজার
        • বুলিয়ান
      • ফ্লোটিং
        • ফ্লোটিং পয়েন্ট
        • কমপ্লেক্স
        • ডেসিমাল
      • স্ট্রিংস
    • কালেকশন ডেটা টাইপ্স
      • সিকোয়েন্স টাইপ
        • লিস্ট
        • ট্যুপল
      • সেট টাইপ
        • সেট
        • ফ্রোজেন সেট
      • ম্যাপিং
        • ডিকশনারি
        • কাউন্টার
  • অধ্যায় ৩ঃ কন্ট্রোল স্ট্রাকচারস
    • কন্ডিশনাল স্টেটমেন্ট
    • লুপ
      • ফর লুপ
      • হোয়াইল লুপ
      • রেঞ্জ range()
      • enumerate()
      • zip()
  • অধ্যায় ৪ঃ পাইথন কম্প্রিহেনশন্স
    • লিস্ট কম্প্রিহেনশন্স
    • ডিকশনারি কম্প্রিহেনশন্স
    • সেট কম্প্রিহেনশন্স
  • অধ্যায় ৫ঃ ফাংশনাল প্রোগ্রামিং
    • পাইথন ফাংশন্স
    • আর্গুমেন্টস অব ফাংশন্স
      • ডিফল্ট আর্গুমেন্টস
      • রিকোয়ার্ড আর্গুমেন্টস
      • কি-ওয়ার্ড আর্গুমেন্টস
      • ভ্যারিবেল লেনথ আর্গুমেন্টস
    • রিকার্শন ইন পাইথন
Powered by GitBook
On this page

Was this helpful?

  1. অধ্যায় ৪ঃ পাইথন কম্প্রিহেনশন্স

লিস্ট কম্প্রিহেনশন্স

বেসিক সিনট্যাক্সঃ (values) = [(expression) for in (data) in (collection)]

এই এক্সপ্রেশনকে বোঝার জন্য আমরা এর সাধারন পদ্ধতি দেখিঃ

    values = []
    for (data) in (collection):
        (values).append((expression))

এখানে expression এর ভ্যালু data হতে পারে বা যে কোন অপারেশন হতে পারে।

>>> numbers = [1,2,3,4,5,6]
>>> numbers_list = []
>>> for n in numbers:
    numbers_list.append(n)

>>> print(numbers_list)
[1, 2, 3, 4, 5, 6]

এই প্রোগ্রামটাকে যদি কম্প্রিহেনশন ব্যবহার করে লিখা হয় তাহলে এমন হবে,

>>> numbers_list = [n for n in numbers]      
>>> numbers_list  
[1, 2, 3, 4, 5, 6]

এখানে প্রথম n হল expression এবং দ্বিতীয় n হল data এর ভ্যালু আবার যখন if ব্যবহার করব তখন আমাদের সিনট্যাক্স টা হবে এমনঃ [(expression) for (data) in (collection) if (condition)] এর সাধারন পদ্ধতি হলঃ

    (values) = []
    for (data) in (collection):
        if (condition):
              (values).append((expression))

উদাহরণ ২:

>>>even_numbers = []
>>>even_numbers = [ n for n in numbers if n%2 == 0 ]
[2, 4, 6]       #output

এই সম্পূর্ন কোড কে আরও ছোট করে ১ লাইনে লিখা যায়।

>>>even_numbers = print(list([n for n in numbers if n%2 == 0]))
[2, 4, 6]       #output

আমরা প্রথমে যে আউটপুট পাচ্ছি সেগুলোকে লিস্ট অবজেক্টে পরিবর্তন করে নিয়েছি এবং print() ফাংশনে পাস করে দিয়েছি।

উদাহরণ ৩:

my_list = []
for letter in 'abcd':
    for num in numbers:
        my_list.append((letter,num))

print(my_list)

এই প্রোগ্রাম লিখার জন্য নেস্টেড লিস্ট কম্প্রহেনশন ব্যবহার করতে হবে।

my_list=[(letter,num) for letter in 'abcd' for num in numbers ]
print(my_list)

ফর লুপ দুটোর স্থান পরিবর্তন করে আউটপুটের ভিন্নতার কারণ বিশ্লেষণ করার চেষ্টা কর।

Previousঅধ্যায় ৪ঃ পাইথন কম্প্রিহেনশন্সNextডিকশনারি কম্প্রিহেনশন্স

Last updated 3 years ago

Was this helpful?