|
| 1 | +# Task 6 |
| 2 | +# Write a program calculate average words length |
| 3 | +import string |
| 4 | + |
| 5 | +first_sentence = "Hi all, my name is Tom...I am originally from Australia." |
| 6 | +second_sentence = "I need to work very hard to learn more about algorithms in Python!" |
| 7 | + |
| 8 | + |
| 9 | +def remove_special_characters(message: str) -> str: |
| 10 | + for letter in string.punctuation: |
| 11 | + message = message.replace(letter, '') |
| 12 | + return message |
| 13 | + |
| 14 | + |
| 15 | +def average_words_length(message: str) -> str: |
| 16 | + message_without_special_characters = remove_special_characters(message) |
| 17 | + words_length_sum = 0 |
| 18 | + split_message = message_without_special_characters.split(' ') |
| 19 | + for word in split_message: |
| 20 | + words_length_sum = words_length_sum + len(word) |
| 21 | + return round(words_length_sum / len(split_message), ndigits=2) |
| 22 | + |
| 23 | + |
| 24 | +def test_average_words_length_with_first_message(): |
| 25 | + assert average_words_length(first_sentence) == 4.2 |
| 26 | + |
| 27 | + |
| 28 | +def test_average_words_length_with_second_message(): |
| 29 | + assert average_words_length(second_sentence) == 4.08 |
0 commit comments