পাইথনে সাবস্ট্রিং পরীক্ষা করা হচ্ছে: 'ধারণ করা' এবং 'indexOf'-এর বিকল্প

পাইথনে সাবস্ট্রিং পরীক্ষা করা হচ্ছে: 'ধারণ করা' এবং 'indexOf'-এর বিকল্প
Python

পাইথনে স্ট্রিং পদ্ধতি বোঝা

পাইথন প্রোগ্রামারদের প্রায়ই একটি স্ট্রিং এর মধ্যে একটি সাবস্ট্রিং বিদ্যমান কিনা তা পরীক্ষা করতে হয়। যদিও অনেক ভাষা `ধারণ করে` বা `indexOf` এর মতো পদ্ধতি অফার করে, পাইথনের এই সাধারণ প্রয়োজনীয়তা পরিচালনা করার নিজস্ব উপায় রয়েছে। এই নিবন্ধে, আমরা অন্বেষণ করব কিভাবে আপনি পাইথনে সাবস্ট্রিং চেক দক্ষতার সাথে সম্পাদন করতে পারেন।

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

আদেশ বর্ণনা
in একটি প্রধান স্ট্রিংয়ের মধ্যে একটি সাবস্ট্রিং বিদ্যমান কিনা তা পরীক্ষা করে, সত্য বা মিথ্যা ফেরত দেয়।
find স্ট্রিং-এর সর্বনিম্ন সূচক প্রদান করে যেখানে সাবস্ট্রিং পাওয়া যায়; ফিরে না পাওয়া গেলে -1।
def কোডের একটি ফাংশন ব্লক সংজ্ঞায়িত করে যেটি শুধুমাত্র যখন কল করা হয় তখনই চলে।
for একটি ক্রম (যেমন একটি তালিকা, টুপল, অভিধান, সেট, বা স্ট্রিং) উপর লুপ করার জন্য ব্যবহৃত হয়।
if not শর্তসাপেক্ষ বিবৃতি যা কোড নির্বাহ করে যদি শর্তটি মিথ্যা হয়।
continue শুধুমাত্র বর্তমান পুনরাবৃত্তির জন্য লুপের ভিতরে বাকি কোডটি এড়িয়ে যায়, তারপর পরবর্তী পুনরাবৃত্তির সাথে চলতে থাকে।

পাইথনে সাবস্ট্রিং চেক বোঝা

প্রদত্ত স্ক্রিপ্টগুলি দেখায় কিভাবে দুটি ভিন্ন পদ্ধতি ব্যবহার করে পাইথনে সাবস্ট্রিং পরীক্ষা করা যায়: in কীওয়ার্ড এবং find পদ্ধতি প্রথম স্ক্রিপ্ট একটি ফাংশন সংজ্ঞায়িত করে, contains_substring, এটি দুটি আর্গুমেন্ট লাগে: main_string এবং substring. এটি ফিরে আসে True যদি substring মধ্যে বিদ্যমান main_string এবং False অন্যথায় এটি ব্যবহার করে অর্জন করা হয় in কীওয়ার্ড, যা পাইথনে সাবস্ট্রিং চেক করার একটি সহজ এবং কার্যকর উপায়। স্ক্রিপ্ট তারপর a ব্যবহার করে স্ট্রিংগুলির একটি তালিকার উপর পুনরাবৃত্তি করে for লুপ, এবং যদি substring বর্তমান স্ট্রিং পাওয়া যায় না, এটি ব্যবহার করে continue পরবর্তী পুনরাবৃত্তি এড়িয়ে যাওয়ার বিবৃতি।

দ্বিতীয় স্ক্রিপ্ট একটি অনুরূপ পদ্ধতি ব্যবহার করে কিন্তু লিভারেজ find পরিবর্তে পদ্ধতি। কাজ contains_substring_with_find চেক করে কিনা substring মধ্যে উপস্থিত আছে main_string ফিরে আসার মাধ্যমে True যদি find পদ্ধতি ফিরে আসে না -1. দ্য find পদ্ধতি জন্য অনুসন্ধান substring এবং সর্বনিম্ন সূচক প্রদান করে যেখানে এটি পাওয়া যায়, বা -1 যদি এটি পাওয়া না যায়। আপনি যদি অবস্থানের প্রয়োজন হয় তবে এই পদ্ধতিটি আরও নিয়ন্ত্রণ প্রদান করে substring, কিন্তু একটি সহজ চেক জন্য, in কীওয়ার্ড আরও সোজা। উভয় স্ক্রিপ্টই ব্যাখ্যা করে কিভাবে দক্ষতার সাথে সাবস্ট্রিংগুলি পরীক্ষা করা যায় এবং যেখানে সাবস্ট্রিং পাওয়া যায় না এমন কেসগুলি পরিচালনা করা যায়, পরিষ্কার এবং পঠনযোগ্য পাইথন কোডের অনুমতি দেয়।

পাইথনে সাবস্ট্রিংগুলি কীভাবে পরীক্ষা করবেন

'ইন' কীওয়ার্ড ব্যবহার করে পাইথন স্ক্রিপ্টের উদাহরণ

def contains_substring(main_string, substring):
    return substring in main_string

strings_to_check = ["hello world", "Python programming", "substring search"]
substring = "Python"

for string in strings_to_check:
    if not contains_substring(string, substring):
        continue
    print(f"'{substring}' found in '{string}'")

পাইথনের 'অনুসন্ধান' পদ্ধতি ব্যবহার করে সাবস্ট্রিং খোঁজা

'খোঁজ' পদ্ধতি ব্যবহার করে পাইথন স্ক্রিপ্টের উদাহরণ

def contains_substring_with_find(main_string, substring):
    return main_string.find(substring) != -1

strings_to_check = ["example string", "testing find method", "no match here"]
substring = "find"

for string in strings_to_check:
    if not contains_substring_with_find(string, substring):
        continue
    print(f"'{substring}' found in '{string}'")

পাইথনে বিকল্প স্ট্রিং পদ্ধতি অন্বেষণ করা

ছাড়াও in কীওয়ার্ড এবং find পদ্ধতি, পাইথন অন্যান্য স্ট্রিং পদ্ধতি অফার করে যা সাবস্ট্রিং চেক করার জন্য উপযোগী হতে পারে। এরকম একটি পদ্ধতি হল count, যা একটি স্ট্রিং-এ একটি সাবস্ট্রিং-এর অ-ওভারল্যাপিং ঘটনার সংখ্যা প্রদান করে। যদিও এটি সরাসরি প্রতিস্থাপন নয় contains বা indexOf, গণনা শূন্যের চেয়ে বেশি কিনা তা পরীক্ষা করে একটি সাবস্ট্রিং বিদ্যমান কিনা তা নির্ধারণ করতে এটি ব্যবহার করা যেতে পারে। আরেকটি পদ্ধতি হল startswith, যা একটি স্ট্রিং একটি নির্দিষ্ট সাবস্ট্রিং দিয়ে শুরু হয় কিনা তা পরীক্ষা করে। এই পদ্ধতিটি বিশেষভাবে উপযোগী যখন আপনাকে স্ট্রিংগুলিতে উপসর্গগুলি যাচাই করতে হবে, যেমন একটি URL 'http' দিয়ে শুরু হয় কিনা তা পরীক্ষা করা।

একইভাবে, দ endswith পদ্ধতি পরীক্ষা করে যে একটি স্ট্রিং একটি নির্দিষ্ট সাবস্ট্রিং দিয়ে শেষ হয় কিনা। এটি ফাইল এক্সটেনশন বা অন্যান্য প্রত্যয় যাচাই করার জন্য সহায়ক। পাইথন এছাড়াও প্রদান করে re নিয়মিত এক্সপ্রেশন ব্যবহার করে আরও উন্নত সাবস্ট্রিং অনুসন্ধানের জন্য মডিউল। দ্য re.search ফাংশন স্ট্রিংগুলির মধ্যে প্যাটার্ন ম্যাচিং করার অনুমতি দেয়, জটিল সাবস্ট্রিংগুলি খুঁজে পাওয়ার একটি শক্তিশালী উপায় প্রদান করে। যদিও নিয়মিত অভিব্যক্তিগুলি লিখতে এবং বোঝার জন্য আরও জটিল হতে পারে, তারা জটিল সাবস্ট্রিং অনুসন্ধানের জন্য নমনীয়তা এবং শক্তি প্রদান করে। এই বিকল্প পদ্ধতিগুলি পাইথন প্রোগ্রামারদের সাবস্ট্রিং চেকগুলি পরিচালনা করার জন্য বিভিন্ন ধরণের সরঞ্জাম সরবরাহ করে, বিভিন্ন প্রয়োজন এবং ব্যবহারের ক্ষেত্রে পূরণ করে।

পাইথনে সাবস্ট্রিং পদ্ধতি সম্পর্কে সাধারণ প্রশ্ন

  1. পাইথনে একটি স্ট্রিংটিতে একটি সাবস্ট্রিং রয়েছে কিনা তা আমি কীভাবে পরীক্ষা করতে পারি?
  2. আপনি ব্যবহার করতে পারেন in কীওয়ার্ড বা find একটি স্ট্রিং একটি সাবস্ট্রিং আছে কিনা তা পরীক্ষা করার পদ্ধতি।
  3. পার্থক্য কি find এবং index পদ্ধতি?
  4. দ্য find মেথড রিটার্ন করে -1 যদি সাবস্ট্রিং পাওয়া না যায়, যেখানে index পদ্ধতি একটি ValueError উত্থাপন করে।
  5. আমি কি পাইথনে সাবস্ট্রিং চেকের জন্য নিয়মিত এক্সপ্রেশন ব্যবহার করতে পারি?
  6. হ্যাঁ, আপনি ব্যবহার করতে পারেন re.search থেকে ফাংশন re উন্নত সাবস্ট্রিং অনুসন্ধানের জন্য মডিউল।
  7. একটি স্ট্রিং একটি নির্দিষ্ট সাবস্ট্রিং দিয়ে শুরু হয় কিনা তা আমি কিভাবে পরীক্ষা করব?
  8. আপনি ব্যবহার করতে পারেন startswith একটি স্ট্রিং একটি নির্দিষ্ট সাবস্ট্রিং দিয়ে শুরু হয় কিনা তা পরীক্ষা করার পদ্ধতি।
  9. একটি স্ট্রিং একটি নির্দিষ্ট সাবস্ট্রিং দিয়ে শেষ হয় কিনা তা পরীক্ষা করতে আমি কোন পদ্ধতি ব্যবহার করতে পারি?
  10. দ্য endswith একটি স্ট্রিং একটি নির্দিষ্ট সাবস্ট্রিং দিয়ে শেষ হয় কিনা তা পরীক্ষা করতে পদ্ধতি ব্যবহার করা যেতে পারে।
  11. একটি স্ট্রিং মধ্যে একটি সাবস্ট্রিং ঘটনা গণনা একটি পদ্ধতি আছে?
  12. হ্যাঁ count মেথড একটি স্ট্রিং-এ একটি সাবস্ট্রিং-এর অ-ওভারল্যাপিং ঘটনার সংখ্যা প্রদান করে।
  13. সাবস্ট্রিং পাওয়া যায় না এমন ক্ষেত্রে আমি কীভাবে পরিচালনা করতে পারি?
  14. আপনি একটি ব্যবহার করতে পারেন if সঙ্গে বিবৃতি not অথবা চেক করুন find সাবস্ট্রিং পাওয়া যায় না এমন ক্ষেত্রে হ্যান্ডেল করতে -1 রিটার্ন করে।
  15. এই পদ্ধতির মধ্যে কর্মক্ষমতা পার্থক্য আছে?
  16. হ্যাঁ, পদ্ধতি পছন্দ in এবং startswith সাধারণ চেকের জন্য সাধারণত দ্রুত হয়, যখন রেগুলার এক্সপ্রেশন ধীর কিন্তু আরও শক্তিশালী হতে পারে।

পাইথনে সাবস্ট্রিং পদ্ধতি সম্পর্কে চূড়ান্ত চিন্তাভাবনা

পাইথন নেই a contains বা indexOf কিছু অন্যান্য ভাষার মত পদ্ধতি। যাইহোক, এটি সাবস্ট্রিং পরীক্ষা করার বিভিন্ন উপায় প্রদান করে, যেমন in কীওয়ার্ড, the find পদ্ধতি, এবং নিয়মিত অভিব্যক্তি। প্রতিটি পদ্ধতির সুবিধা রয়েছে, এটি আপনার নির্দিষ্ট প্রয়োজনের উপর ভিত্তি করে সঠিকটি বেছে নেওয়া গুরুত্বপূর্ণ করে তোলে। এই কৌশলগুলি আয়ত্ত করে, আপনি দক্ষতার সাথে সাবস্ট্রিং চেকগুলি পরিচালনা করতে পারেন এবং পরিষ্কার, কার্যকর পাইথন কোড লিখতে পারেন।