Python checks whether the string is the correct ISBN method, pythonisbn

Source: Internet
Author: User

Python checks whether the string is the correct ISBN method, pythonisbn

This example describes how to check whether the string is ISBN correctly in python. Share it with you for your reference. The specific implementation method is as follows:

def isISBN(isbn):   """Checks if the passed string is a valid ISBN number."""   if len(isbn) != 10 or not isbn[:9].isdigit():     return False   if not (isbn[9].isdigit() or isbn[9].lower() == "x"):     return False   tot = sum((10 - i) * int(c) for i, c in enumerate(isbn[:-1]))   checksum = (11 - tot % 11) % 11   if isbn[9] == 'X' or isbn[9] == 'x':     return checksum == 10   else:     return checksum == int(isbn[9]) ok = """031234161X 0525949488 076360013X 0671027360 0803612079     0307263118 0684856093 0767916565 0071392319 1400032806 0765305240""" for code in ok.split():   assert isISBN(code) bad = """0312341613 052594948X 0763600138 0671027364 080361207X 0307263110      0684856092 0767916567 0071392318 1400032801 0765305241 031234161      076530Y241 068485609Y""" for code in bad.split():   assert not isISBN(code) print "Tests of isISBN()passed." 

I hope this article will help you with Python programming.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.