Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #39579
| References | <CAJ2vgs5_gYPvMxfBUjs_6QgzUNd4akTvL2p0jV+7E-m8_6xeUw@mail.gmail.com> |
|---|---|
| Date | 2013-02-23 02:30 +1100 |
| Subject | Re: Number validation issue |
| From | Alec Taylor <alec.taylor6@gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.2274.1361547052.2939.python-list@python.org> (permalink) |
Out[1]: '0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
24 25 26 27 28 29'
In [2]: [not len(x) >= 2 and len(x)<=25 for x in _]
Out[2]: [True]*79 # shorthand to prevent spam
I trust you can see the error now!
On Sat, Feb 23, 2013 at 2:09 AM, Morten Engvoldsen <mortenengv@gmail.com> wrote:
> Hi ,
> I have wrote the below code to validate a number using modulus 10 and 11:
>
> def is_valid_number(checknum, mod):
> if mod == 10:
> if not len(checknum) >= 2 and len(checknum) <=25:
> return False
> number = tuple(int(i) for i in reversed(str(checknum)) )
> return (sum(int(num) * 2 for num in number[1::2]) % 10) == 0
> elif mod == 11:
> if not len(checknum)!= 11:
> return False
> weights = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2, 1]
> return (sum(w * int(x) for w, x in zip(weights, checknum)) % 11) ==
> 0
>
> is_valid_number("12345678217", 10)
>
> The above code is able to validate 25 length number for modulus 10 , but for
> modulus 11 i have done the validation only for 11 digit, Since for modulus
> 11 the weight should be in
> .............4,3,2,7,6, 5, 4, 3, 2, 7, 6, 5, 4, 3, 2, 1 in this format.
>
> Could you please let me know how can i validate the 25 length number for
> modulus 11 with weight ...............4,3,2,7,6, 5, 4, 3, 2, 7, 6, 5, 4, 3,
> 2, 1 in this format.
>
> Regards,
> Morten
>
>
>
> --
> http://mail.python.org/mailman/listinfo/python-list
>
Back to comp.lang.python | Previous | Next | Find similar | Unroll thread
Re: Number validation issue Alec Taylor <alec.taylor6@gmail.com> - 2013-02-23 02:30 +1100
csiph-web