stuff to do

This commit is contained in:
2016-01-03 11:25:02 -05:00
commit bc46c80b02
11 changed files with 219 additions and 0 deletions

26
01-title_case/README.md Normal file
View File

@ -0,0 +1,26 @@
Title Transform
===============
Write a function that transforms a string into [title case](http://en.wikipedia.org/wiki/Letter_case#Headings_and_publication_titles).
This mostly means capitalizing only every first letter of every word in the string.
However, there are some non-obvious exceptions to title case which can't easily be hard-coded. Your function must accept, as a second argument, a set or list of words that should not be capitalized.
Furthermore, the first word of every title should always have a capital leter. For example:
```python
exceptions = ['jumps', 'the', 'over']
titlecase('the quick brown fox jumps over the lazy dog', exceptions)
```
This should return:
The Quick Brown Fox jumps over the Lazy Dog
An example from the Wikipedia page:
```python
exceptions = ['are', 'is', 'in', 'your', 'my']
titlecase('THE vitamins ARE IN my fresh CALIFORNIA raisins', exceptions)
```
Returns:
The Vitamins are in my Fresh California Raisins

15
01-title_case/title.py Executable file
View File

@ -0,0 +1,15 @@
#!/usr/bin/env python3
def titlecase( string, exceptions ):
word_list = string.lower().split(' ')
for i, word in enumerate( word_list ):
if( word not in exceptions ):
word_list[i] = word.title()
word_list[0] = word_list[0].title()
return ' '.join( word_list )
assert( titlecase( 'the quick brown fox jumps over the lazy dog', ['jumps', 'the', 'over'] ) == 'The Quick Brown Fox jumps over the Lazy Dog' )
assert( titlecase( 'THE vitamins ARE IN my fresh CALIFORNIA raisins', ['are', 'is', 'in', 'your', 'my'] ) == 'The Vitamins are in my Fresh California Raisins' )