On 11/24/23 14:10, Chris Green via Python-list wrote:
Chris Green <c...@isbd.net> wrote:
This is driving me crazy, I'm running this code:-

OK, I've found what's wrong:-

         cr.execute(sql, ('%' + "2023-11" + '%'))

should be:-

     cr.execute(sql, ('%' +  x + '%',) )


I have to say this seems very non-pythonesque to me, the 'obvious'
default simply doesn't work right, and I really can't think of a case
where the missing comma would make any sense at all.

as noted, the comma makes it a tuple.

this might be a case where rewriting as an f-string makes it just a little more readable, since the syntax will make it look like there's a single string followed by a comma - the addition just makes it look less clear to my eyes:

cr.execute(sql, (f'%2023-11%', ))

cr.execute(sql, (f'%{x}%', ))

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to