কম্পিউটার টিউটোরিয়াল

পাইথন প্রোগ্রাম: স্মল লেটার (Lowercase) অ্যালফাবেটের বিজোড় ইনডেক্স (Even Index) থেকে যাবতীয় ৫টি সিরিজে তৈরি করুন

সমস্যা বিবরণ

ইংরেজি বর্ণমালার ছোট হাতের অক্ষর (a-z) থেকে বিজোড় ইনডেক্স (০, ২, ৪... অর্থাৎ a, c, e...) বाले অক্ষরগুলো থেকে যাবতীয় ৫টি বেছে নিয়ে একটি সিরিজ তৈরি করা।

সমাধান ১: স্ট্রিং স্লাইসিং ও random.sample (সেরা পদ্ধতি)

import pandas as pd
import string
import random as r

chars = string.ascii_lowercase  # 'abcdefghijklmnopqrstuvwxyz'
print("ছোট হাতের অক্ষর:", chars)

# বিজোড় ইনডেক্স (even index): chars[::2] -> a, c, e, g, ...
even_chars = chars[::2]
random_chars = r.sample(list(even_chars), 5)
result = pd.Series(random_chars)

print("যাবতীয় বিজোড় ইনডেক্স অক্ষর:", random_chars)
print("সিরিজ:")
print(result)

সমাধান ২: লুপ দিয়ে বিজোড় ইনডেক্স কালেক্ট করে

import string
import pandas as pd
import random as r

l = list(string.ascii_lowercase)
ls = []
for i in l:
    if l.index(i) % 2 == 0:  # বিজোড় ইনডেক্স
        ls.append(i)

data = pd.Series(r.sample(ls, 5))
print("সিরিজ:")
print(data)

আউটপুট (উদাহরণ - যাবতীয়ভাবে ভিন্ন হবে)

ছোট হাতের অক্ষর: abcdefghijklmnopqrstuvwxyz
যাবতীয় বিজোড় ইনডেক্স অক্ষর: ['w', 'k', 'i', 'u', 'm']
সিরিজ:
0    w
1    k
2    i
3    u
4    m
dtype: object

ব্যাখ্যা

string.ascii_lowercase দিয়ে 'a' থেকে 'z' পাওয়া যায়। [::2] স্লাইসিং দিয়ে বিজোড় ইনডেক্স (0-based) এর এলিমেন্টগুলো নেওয়া যায়। random.sample নন-রিপিটিং যাবতীয় স্যাম্পলিং নিশ্চিত করে।

  1. পাইথন প্রোগ্রাম: সিরিজ থেকে শুধু ইন্টিজার (Integer) এলিমেন্ট ফিল্টার করুন

  2. পাইথন প্রোগ্রাম: সিরিজের বিজোড় (Odd) ইনডেক্স পজিশনগুলো র‍্যান্ডম বড় হাতের স্বরবর্ণ (Uppercase Vowels) দিয়ে রিপ্লেস করুন

  3. পাইথন প্রোগ্রাম: সিরিজ থেকে বৈধ (Valid) তারিখ (Date) ফিল্টার করুন

  4. পাইথন প্রোগ্রাম: স্মল লেটার (Lowercase) অ্যালফাবেটের বিজোড় ইনডেক্স (Even Index) থেকে যাবতীয় ৫টি সিরিজে তৈরি করুন