Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #13066

Re: Doctest failing

From Peter Otten <__peter__@web.de>
Subject Re: Doctest failing
Followup-To gmane.comp.python.general
Date 2011-09-10 13:47 +0200
Organization None
References <678b89fd-82f4-4080-8b36-e4d0ba30cdbf@o9g2000vbo.googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.933.1315655225.27778.python-list@python.org> (permalink)

Followups directed to: gmane.comp.python.general

Show all headers | View raw


Tigerstyle wrote:

> I'm strugglin with some homework stuff and am hoping you can help me
> out here.
> 
> This is the code:
> 
> small_words = ('into', 'the', 'a', 'of', 'at', 'in', 'for', 'on')

>     new_title = []
>     title_split = title.strip().lower().split()
>     for word in title_split:
>         if title_split[0] in small_words:
>             new_title.append(word.title())
>         elif word in small_words:
>             new_title.append(word.lower())
>         else:
>             new_title.append(word.title())

The logic of the for-loop is flawed; the expression 

title_split[0] in small_words

will always evaluate to True if the first word is a "small word", even when 
the loop is already past the first word. You can work around that with a 
flag along these lines

first = True
for word in title_split:
    if first:
        # special treatment for the first word
        first = False
    else:
        # put checks for all words but the first here
    new_title.append(fixed_word) # assuming you have stored the titlecased
                                 # or lowercased word in the fixed_word
                                 # variable

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-10 04:20 -0700
  Re: Doctest failing Mel <mwilson@the-wire.com> - 2011-09-10 07:43 -0400
    Re: Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-11 09:36 -0700
  Re: Doctest failing Peter Otten <__peter__@web.de> - 2011-09-10 13:47 +0200
    Re: Doctest failing ting@thsu.org - 2011-09-10 19:12 -0700
      Re: Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-11 09:42 -0700
  Re: Doctest failing Thomas Jollans <t@jollybox.de> - 2011-09-10 13:50 +0200
    Re: Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-11 09:39 -0700
  Re: Doctest failing Alister Ware <alister.ware@ntlworld.com> - 2011-09-10 12:24 +0000
    Re: Doctest failing Chris Angelico <rosuav@gmail.com> - 2011-09-11 01:56 +1000
      Re: Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-11 09:40 -0700
    Re: Doctest failing Ethan Furman <ethan@stoneleaf.us> - 2011-09-11 11:43 -0700
    Re: Doctest failing Chris Angelico <rosuav@gmail.com> - 2011-09-12 11:03 +1000
      Re: Doctest failing Ben Finney <ben+python@benfinney.id.au> - 2011-09-12 11:37 +1000
        Re: Doctest failing Chris Angelico <rosuav@gmail.com> - 2011-09-12 13:06 +1000
          Re: Doctest failing Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2011-09-12 14:29 +1000
  Re: Doctest failing Terry Reedy <tjreedy@udel.edu> - 2011-09-10 13:59 -0400
    Re: Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-11 04:46 -0700
      Re: Doctest failing Terry Reedy <tjreedy@udel.edu> - 2011-09-11 13:03 -0400
  Re: Doctest failing Terry Reedy <tjreedy@udel.edu> - 2011-09-10 15:36 -0400
  Re: Doctest failing Peter Otten <__peter__@web.de> - 2011-09-10 22:49 +0200
  Re: Doctest failing Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2011-09-10 16:25 -0700
  Re: Doctest failing Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2011-09-10 23:18 -0700
    Re: Doctest failing Tigerstyle <laddosingh@gmail.com> - 2011-09-11 09:43 -0700
      Re: Doctest failing Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2011-09-11 12:37 -0700

csiph-web