给定一篇英文文章和一个单词列表，编写一个函数，该函数将文章中包含单词列表中任何一个单词的所有句子提取出来，并将提取出来的句子返回为列表。
文章: "John works at a software company. His job is to write code all day. He enjoys his work and learns something new every day."
单词列表: ["software", "code"]
函数实现：
```python
def extract_sentences(article: str, word_list: List[str]) -> List[str]:
    sentences = article.split(".")
    output_list = []
    for sentence in sentences:
        if any(word in sentence for word in word_list):
            output_list.append(sentence.strip())
    return output_list
```

函数说明：将文章按句号分割为句子，遍历每个句子判断是否包含单词列表中的单词，如果包含则加入输出列表中返回。