দুটি স্ট্রিংয়ের মধ্যে কমন (উভয়ে উপস্থিত) ওয়ার্ডগুলো বাদ দিয়ে শুধু আনকমন (যে শুধু একটি স্ট্রিংয়ে আছে) ওয়ার্ডগুলো বের করতে ডিকশনারি এবং লিস্ট কম্প্রিহেনশন ব্যবহার করা হয়।
উদাহরণ
def common_words_filter(my_string_1, my_string_2):
my_word_count = {}
for word in my_string_1.split():
my_word_count[word] = my_word_count.get(word, 0) + 1
for word in my_string_2.split():
my_word_count[word] = my_word_count.get(word, 0) + 1
return [word for word in my_word_count if my_word_count[word] == 1]
my_string_1 = "Python is fun"
print("The first string is :")
print(my_string_1)
my_string_2 = "Python is fun to learn"
print("The second string is :")
print(my_string_2)
print("The result is :")
print(common_words_filter(my_string_1, my_string_2))
আউটপুট
The first string is : Python is fun
The second string is : Python is fun to learn
The uncommon words from the two strings are : ['to', 'learn']
ব্যাখ্যা
common_words_filterফাংশন দুটি স্ট্রিং নেয়।- খালি ডিকশনারি
my_word_countতৈরি করা হয়। - প্রথম স্ট্রিং স্প্লিট করে ওয়ার্ড কাউন্ট আপডেট করা হয় (
getমেথড)। - দ্বিতীয় স্ট্রিংও একইভাবে প্রসেস করা হয়।
- লিস্ট কম্প্রিহেনশন দিয়ে কাউন্ট == ১ যেসব ওয়ার্ড, সেগুলো রিটার্ন করা হয়।
- বাহিরে দুটি স্ট্রিং ডিফাইন করে ফাংশন কল এবং আউটপুট প্রিন্ট করা হয়।
নোট: কেস-সেনসিটিভ। "Python" এবং "python" আলাদা মনে হবে। কেস-ইনসেনসিটিভ করতে .lower() ব্যবহার করুন।