Найти - Пользователи
Полная версия: Помогите написать функции в модуле!!!
Начало » Python для новичков » Помогите написать функции в модуле!!!
1
ta8neta
Помогите решить задачу:

Создайте модуль wordtools.py, содержащий следующие функции:

1. cleanword(s) - возвращает s без знаков препинания. Например, cleanword(“what?”) == “what”
2. extract_words(s) - возвращает список слов из строки s. Например, extract_words(“просто три слова”) == ‘просто’, ‘три’, ‘слова’
2. get_words_count(s) - возвращает количество слов в строке s. Например, get_words_count(“просто три слова”) == 3
3. get_longest_word(s) - возвращает самое длинное слово в строке s. Например, get_longest_word(“просто три слова”) == ‘просто’
ZerG
wordtools.py

# -*- coding: utf-8 -*-
import re
def cleanword(s):
    delete = re.compile(u'\W+?', re.UNICODE)
    return delete.sub(' ', s)
def extract_words(s):
    world_ext = cleanword(s).split()
    return world_ext
def get_words_count(s):
    return len(extract_words(s))
def get_longest_word(s):
    max = 0
    for word in extract_words(s):
        if len(word) > max:
            max = len(word)
            result = word
    return result
if __name__ == '__main__':
    main()

Пример использования

# -*- coding: utf-8 -*-
import wordtools as wt
stroka = 'This, is the test, stringing!'
print wt.cleanword(stroka)
print wt.extract_words(stroka)
print wt.get_words_count(stroka)
print wt.get_longest_word(stroka)

Однако поиграйте с одинаковыми словами. Я специально оставил вам задачу не до конца выполненную.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB