Python:
স্ট্রিং এর দৈর্ঘ্য চিহ্নিত করা
কিভাবে:
# len() ফাংশনের সরল ব্যবহার
my_string = "Hello, World!"
length = len(my_string)
print(length) # আউটপুট: 13
# লুপে দৈর্ঘ্য
for i in range(len(my_string)):
print(my_string[i], end='') # আউটপুট: Hello, World!
print() # নতুন লাইনের জন্য
# স্ট্রিং দৈর্ঘ্যের সাথে অন্যান্য অপারেশন যুক্ত করা
if len(my_string) > 10:
print("এটি একটি দীর্ঘ স্ট্রিং!") # আউটপুট: এটি একটি দীর্ঘ স্ট্রিং!
গভীর ডুব
ঐতিহাসিকভাবে, len()
ফাংশন স্ট্রিংয়ের দৈর্ঘ্য খোঁজার জন্য পাইথনের প্রিয় উপায়। এটি মার্জিত এবং দ্রুত। পাইথনের স্ট্রিংগুলো ইউনিকোড অক্ষর প্রতিনিধিত্বকারী বাইটের অ্যারে হিসাবে থাকে, এবং len()
ওইগুলো গণনা করে। এই ফাংশনটি শুধু স্ট্রিংয়ের সাথে নয়, যেকোনো ইটারেবলের সাথে কাজ করে।
বিকল্প? ভাল, স্ট্রিংয়ের জন্য সাধারণত ব্যবহৃত নয়, কিন্তু আপনি ম্যানুয়ালি একটি স্ট্রিং প্রতি লুপ চালিয়ে অক্ষর গণনা করতে পারেন—বেমানান এবং অকার্যকর। ইউনিকোড সাপোর্টের আগে, একটি স্ট্রিংয়ের দৈর্ঘ্য কখনো কখনো এর মেমরি আকার থেকে ভিন্ন হতো, কিন্তু যেহেতু পাইথন 3’র স্ট্রিংগুলো ইউনিকোড-নেটিভ, len()
সঠিকভাবে অক্ষরের সংখ্যাকে প্রতিনিধিত্ব করে।
বাস্তবায়নের দিক থেকে, পাইথনের স্ট্রিংগুলো মেটাডেটা সহ অবজেক্ট, যাতে দৈর্ঘ্য অন্তর্ভুক্ত থাকে, তাই len()
আসলে একটি O(1) অপারেশন—স্থির সময়, স্ট্রিংয়ের আকার যাই হোক না কেন। এটি যেন আপনার আঙ্গুল ফাঁকি দিয়ে উত্তর পাওয়া।
দেখুন
len()
জন্য পাইথন ডকুমেন্টেশন: https://docs.python.org/3/library/functions.html#len- পাইথনে ইউনিকোড এবং স্ট্রিং এনকোডিং: https://docs.python.org/3/howto/unicode.html
- বিল্ট-ইন টাইপগুলির জন্য পাইথনের সময় জটিলতা: https://wiki.python.org/moin/TimeComplexity