On Mon, Dec 10, 2018 at 9:01 PM Antoon Pardon <antoon.par...@vub.be> wrote: > > On 8/12/18 06:00, Cameron Simpson wrote: > > On 07Dec2018 20:24, Jach Fong <jf...@ms4.hinet.net> wrote: > >> Ian at 2018/12/8 UTC+8 AM11:28:34 wrote: > >>> What is it exactly that you're trying to accomplish with this? Perhaps > >>> there's a better way than using eval. > >> > >> This problem comes from solving a word puzzle, > >> ab + aa + cd == ce > >> Each character will be translate to a digit and evaluate the > >> correctness, > >> 03 + 00 + 15 == 18 > > > > Then you should be evaluating the digits and assembling values from > > them. Not trying to shoehorn a string through something that _might_ > > accept this string and do what you want. In Python 2 it will accept > > your string and not do what you want; at least in Python 3 it doesn't > > accept your string. > > > > My point here is that the structure of your puzzle doesn't map > > directly into a naive python statement, and you shouldn't be > > pretending it might. > > How do you figure? As far as I understand he is trying to solve this kind of > puzzle: > > SEND > MORE > + ———— > MONEY > > Where every letter is to be replaced by a digit in such a way that the sum > checks out. Sure trying to > solve this by starting with the string: "SEND + MORE == MONEY" and doing > replaces until eval comes up > with true is not very sofisticated but I wouldn't call it shoehorning either. >
Considering that, in a problem of that description, neither S nor M may represent zero, I don't think there's a problem here. ChrisA -- https://mail.python.org/mailman/listinfo/python-list