কম্পিউটার

পাইথনে একটি স্ট্রিং এর শুরুতে বা শেষে পাঠ্যের সাথে কীভাবে মিল করবেন?


সমস্যা..

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

Startswith() পদ্ধতি

একটি স্ট্রিং এর শুরু চেক করার একটি সহজ উপায় হল startswith() পদ্ধতি ব্যবহার করা।

উদাহরণ

text ="মার্কিন যুক্তরাষ্ট্র কি অস্ট্রেলিয়ার চেয়ে বেশি ঠান্ডা?" print(f"output \n {text.startswith('Is')}")

আউটপুট

সত্য

উদাহরণ

filename ="Hello_world.txt"print(f"output \n {filename.startswith('Hello')}")

আউটপুট

সত্য

উদাহরণ

site_url ='https://www.something.com'print(f"output \n {site_url.startswith('http:')}")

আউটপুট

মিথ্যা

উদাহরণ

প্রিন্ট(f"আউটপুট \n {site_url.startswith('https:')}")

আউটপুট

সত্য

endswith() পদ্ধতি।

একটি স্ট্রিং এর সমাপ্তি পরীক্ষা করার একটি সহজ উপায় হল endswith() পদ্ধতি ব্যবহার করে৷

আউটপুট

text ="মার্কিন যুক্তরাষ্ট্র কি অস্ট্রেলিয়ার চেয়ে ঠান্ডা?" print(f"output \n {text.endswith('?')}")

আউটপুট

সত্য

উদাহরণ

filename ="Hello_world.txt"print(f"output \n {filename.endswith('.txt')}")

আউটপুট

সত্য

এখন যদি আমরা উপরের পদ্ধতিগুলির সাথে একাধিক পছন্দ পরীক্ষা করতে চাই তবে আমাদের টিপল সরবরাহ করতে হবে। সাধারণ ব্যবহারগুলির মধ্যে একটি হল ফাইল এক্সটেনশনের জন্য চেক করা যাক আমরা বলি আমাদের একটি ডিরেক্টরিতে ".txt" এবং ".csv" ফাইলগুলির জন্য যাচাই করতে হবে৷

 import osfilenames =os.listdir('.')
# আসুন প্রথমে পরীক্ষা করে দেখুন যে ফাইলের নামগুলিতে নামের জন্য ফাইলপ্রিন্ট(f"আউটপুট \n {any(name.endswith(('.csv',',txt')) আছে কিনা)}")

আউটপুট

সত্য

আউটপুট

[ফাইলের নামের জন্য নাম যদি name.endswith(('.csv', '.txt')) ]

আউটপুট

['file1.csv','HRDataset.csv','Input.csv','input.txt','input_copy.txt','movies_data.csv','my_html_data_to_csv.csv','temporary_file1_for_zip.csv' ','temporary_file2_for_zip.csv','test.csv','test1.txt','test2.txt','tmdb_5000_movies.csv']

মনে রাখবেন এই পদ্ধতিগুলি tuples গ্রহণ করে, যদি আপনার কাছে অনুসন্ধান করার জন্য পছন্দের তালিকা থাকে, তাহলে আমাদের সেগুলিকে tuples-এ রূপান্তর করতে হবে৷

import os# list with choicespatters =['.csv','.txt']# ফাইলের নাম ফাইলের নাম পান =os.listdir('.')# আসুন প্রথমে পরীক্ষা করি যে সেখানে filesany(name.endswith(patters) আছে কিনা। ) ফাইলনামে নামের জন্য)

আউটপুট

<পূর্ব>------------------------------------------------------------ ---------------------------- TypeError Traceback (সর্বশেষ সাম্প্রতিক কল শেষ) in89 # আসুন প্রথমে পরীক্ষা করি ফাইল আছে কিনা---> 10 any(name.endswith(patters) ফাইলনামে নামের জন্য) in (.0)89 # আসুন প্রথমে পরীক্ষা করি যে সেখানে ফাইল আছে কিনা---> 10 any(name.endswith(patters) ফাইলের নামগুলিতে নামের জন্য) TypeError:endswith প্রথম arg অবশ্যই str বা str এর একটি টুপল হতে হবে, তালিকা নয়

উপরের কমান্ডটি একটি ত্রুটি ফিরিয়ে দিয়েছে, তাই আমাদের তালিকাটিকে একটি টিপলে রূপান্তর করতে হবে৷

উদাহরণ

# ফাইলের নামগুলিতে নামের জন্য filesany(name.endswith(tuple(patters)) আছে কিনা তা আগে পরীক্ষা করা যাক)

আউটপুট

সত্য

একইভাবে, ফাইলের নাম পেতে আমাদের তালিকাকে টুপলে রূপান্তর করতে হবে।

উদাহরণ

[ফাইলের নামগুলিতে নামের জন্য নাম যদি name.endswith(tuple(patters)) ]

আউটপুট

['file1.csv','HRDataset.csv','Input.csv','input.txt','input_copy.txt','movies_data.csv','my_html_data_to_csv.csv','temporary_file1_for_zip.csv' ','temporary_file2_for_zip.csv','test.csv','test1.txt','test2.txt','tmdb_5000_movies.csv']

সবশেষে, startswith() এবং endswith() পদ্ধতিগুলি অন্যান্য ক্রিয়াকলাপের সাথে মিলিত হলে সুন্দর দেখায়, যেমন সাধারণ ডেটা হ্রাস। যেমন:

উদাহরণ

যদি থাকে (name.endswith(tuple(patters)) ফাইলের নামের জন্য):<এখানে যুক্তি দেখান>

  1. কিভাবে জাভা RegEx ব্যবহার করে ইনপুট শেষ মেলে?

  2. কিভাবে আমি পাইথনে কীবোর্ড থেকে অনুলিপি করা পাঠ্য পেস্ট করব?

  3. কিভাবে পাইথনে একটি স্ট্রিং আকার পেতে?

  4. কিভাবে পাইথনে একটি স্ট্রিং দৈর্ঘ্য পেতে?