Hi Team, Thanks for the code. I have altered the code with below code, it is able to validate the number now,
def calc_checkdigit(isbn): isbn = isbn.replace(".", "") check_digit = int(isbn[-1]) isbn = isbn[:-1] if len(isbn) != 10: return False weights = [5, 4, 3, 2, 7, 6, 5, 4, 3, 2] result = sum(w * (int(x)) for w, x in zip(weights, isbn)) remainder = result % 11 if remainder == 0: check = 0 else: check = 11 - remainder return check == check_digit calc_checkdigit(""8601.11.**17947"") But can you tell me how could i implement below "If digits 5 and 6 of the account number are zeros, the check digit is calculated on the 7, 8, 9 and 10th digit of the account number." which means if account number is "8601.00.**17947" then check digit is calculate as result = (1*5) + (7*4)+ (9*3)+(4*2) remainder = result % 11 check_digit = 11 - remainder Can you tell me how can i implement this ?
-- http://mail.python.org/mailman/listinfo/python-list