0
所以我有一篇文章類模型在商店中的物品。當我創建一篇新文章時,我希望它有一個EAN 13代碼。因此,我用12位數字代碼初始化文章,並使用check_ean13()函數來檢索控制數字。它可以工作,但似乎在任何時候,創建對象時,重寫ean13屬性並將其替換爲None。有任何想法嗎?設置一個屬性在創建檢索無價值 - Python的
主要
if __name__ == "__main__":
# create article
art1 = Article("123456789087", "Article 1", 145.6, 200.0)
print art1
print art1.get_ean13()
類文章
class Article:
def __init__(self, cod, art_name, cost, listprice):
self.ean13 = self.set_ean13(cod)
self.art_name = art_name
self.cost = cost
self.listprice = listprice
self.commission = None
self.promotion=[]
def get_ean13(self):
return self.ean13
def set_ean13(self,cod):
cd = self.check_ean13(cod)
ean13 = cod + str(cd)
self.ean13=ean13
def check_ean13(self, code):
checksum = 0
for i, digit in enumerate(reversed(code)):
checksum += int(digit) * 3 if (i % 2 == 0) else int(digit)
return (10 - (checksum % 10)) % 10
輸出:
None - Article 1 list price: 400.0
None
我不能相信我沒有看到!謝謝 – user3441996 2014-12-02 18:24:26