Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

تحديات برمجيةالتحدي الثالث - حل التمرين الثالث بلغة بايثون

المطلوب

قم بتعريف دالة إسمها PrintWordsOccurence, نمرر لها نص عند إستدعاءها فتقوم بطباعة كم مرة تكررت كل كلمة في هذا النص.

مثال: إذا قمنا باستخدام الدالة PrintWordsOccurence() و تمرير النص "I am happy. I am a doctor. I like chocolate." فإنها ستطبع النتيجة التالية.

[3] I
[2] am
[1] happy.
[1] a
[1] doctor.
[1] like
[1] chocolate.


الحل بلغة بايثون

def print_words_occurrence(s):

    if not s:
        return

    words = str.split(s, ' ')

    for i in range(0, len(words)):

        counter = 1

        for j in range(i + 1, len(words)):

            if words[i] == words[j]:
                counter += 1
                words[j] = ''

        if words[i] != '':
            print('[' + str(counter) + '] ' + words[i])


text = "I am happy. I am a doctor. I like chocolate."
print_words_occurrence(text)

سنحصل على النتيجة التالية عند التشغيل.

[3] I
[2] am
[1] happy.
[1] a
[1] doctor.
[1] like
[1] chocolate.