2014-10-30 73 views
-2

我想了解python類。我有簡單的類代號爲class1.py和下面給出,瞭解Python類變量

#!/usr/bin/python 
import sys 

class Trial: 

    def __init__(self): 
    self.a = 0 
    self.a = sys.argv[1] 

    def xyz(self): 
    n = 10 
    print self.a 

    if n > self.a: 
     print "Found number" 

ob = Trial() 
ob.xyz() 

當我上面的代碼運行的

python class1.py 1 

它給輸出只有1號和不打印「發現號」。它應該打印「發現號碼」爲10> 1條件爲真。請幫助我理解此代碼。

+2

你用字符串比較整數。 – 2014-10-30 21:29:22

+0

當你傳遞參數時,它將存儲在sys.argv列表中作爲字符串,所以你需要做'self.a = int(sys.argv [1])' – Hackaholic 2014-10-30 21:30:54

+0

你可以在這裏寫上糾正的代碼。 – PyPerl 2014-10-30 21:31:36

回答

-1

刪除:

self.a = sys.argv[1] 

由:

self.a = int(sys.argv[1])