解决方法
- 参考PyPI库
pyisbn
:https://pypi.org/project/pyisbn/ - 使用方法
import pyisbn m_isbn = ‘750081908X’; if(len(m_isbn)==10 or len(m_isbn)==13): ## 首先要符合长度 ## 去除可能出现的错误字符 ## 包括全角符号"X",罗马数字10"Ⅹ" ## 必要时需要引入全角转半角函数 m_isbn = m_isbn.replace('X','X'); m_isbn = m_isbn.replace('Ⅹ','X'); if(pyisbn.validate(m_isbn)): ## 使用转换函数会得到另一个结果 m_isbn2 = pyisbn.convert(m_isbn); ## 根据原始长度决定哪个是ISBN-13,哪个是ISBN-10 if(len(m_isbn)==10): m_isbn_13 = m_isbn2; m_isbn_10 = m_isbn; else: m_isbn_13 = m_isbn; m_isbn_10 = m_isbn2;