Repeat an exception
Alf P. Steinbach
alfps at start.no
Wed Feb 3 22:44:00 EST 2010
* MRAB:
> Alf P. Steinbach wrote:
>> * mf:
>>> I'm translating a db from english to spanish with the Google
>>> translator API. The problem is when a TranslationError occurs(usually
>>> because of connection problems). I can
>>> except the first one, but I don't know how to except again. I "solved"
>>> the problem by saving temp db's and then joining them, but it must be
>>> a pythonic way to do it.
>>>
>>> Here's a snippet from the code:
>>>
>>> english_field = oldDb[i].fieldData[0] #oldDb is a db filled
>>> with english words
>>
>> Is this actual code? I may be mistaken, but at least in Python 3.x it
>> seems there should be a comma between each 'with' expression. And
>> there should certainly be a colon at the end.
>>
>> It's best to copy and paste real code.
>>
>> Made-up code can just be misleading for those who'd like to help.
>>
> It looks to me like the line wrapped during posting, ie the 'with' part
> belongs to the comment.
*banging me head*
thx
What one gets from conditioning oneself to ignore comments in code.
>>> try:
>>> spanish_field = translate(english_field, lang_to='es',
>>> lang_from='en')
>>> except TranslationError:
>>> spanish_field = translate(english_field, lang_to='es',
>>> lang_from='en')
>>>
>>> #Then I save the fields into a new db
>>
>> Possibly I'm misunderstanding what you mean, but have you thought of
>> using a loop?
>>
> In other words:
>
> for attempt in range(2):
> try:
> spanish_field = translate(english_field, lang_to='es',
> lang_from='en')
> break
> except TranslationError:
> pass
> else:
> # Didn't break out of the loop, therefore not successful.
> print "Translation failed"
Cheers,
- Alf
More information about the Python-list
mailing list