[Tutor] Another assert() question
Dick Moores
rdm at rcblue.com
Sat Jul 12 23:35:44 CEST 2008
At 01:28 PM 7/12/2008, Michiel Overtoom wrote:
>Dick wrote:
>
> > I was hoping to put some sort of explanation of failure in an
> > assert statement. But how to do it?
> > So I'd like to know what that 'expression' in the syntax can be,
> > and how to use it.
>
>I think it would help if you separate the detection of duplicate colors from
>the assert statement.
Given the name of the list variable, and the expression "Used a color twice!",
it doesn't seem necessary. But maybe I'm missing something.
>It all looks a bit convoluted now, and I'm missing the context in which this
>all happens.
Here it is. <http://py77.python.pastebin.com/f342197d>
>First detect the presence of duplicate colors in a True/False variable, then
>use that variable in an assert.
>
>Oh, and by the way, you don't have to convert a set to list to be able to
>take it's length.
I'm glad to know that. Thanks!
> colors=["red","blue","green","blue","yellow","blue"]
> duplicatesfound = len(set(colors)) != len(colors)
> assert not duplicatesfound, "A color has been used more than once"
>
>Exercise left for the reader: Report which colors were used more than once.
For this program, I don't care. But I'll work on it.
>And do me a favor, post in plain text, not HTML.
HTML? Please explain.
Dick
More information about the Tutor
mailing list