2014-04-08 160 views
2

python中有沒有任何構建函數可以啓用兩個比較兩個字符串。 我試着比較兩個字符串使用==運算符,但不工作。在python中比較兩個字符串

try: 
    if company=="GfSE-Zertifizierungen": 
     y=2 
     if x<y: 
      print "**************Same company***********" 
      x=x+1 
      flag=0 
      pass  
     if x==y: 
      flag=1 
      x=0 
      count=count+1 
except Exception as e: 
    print e 

這甚至沒有顯示任何錯誤或工作。 任何人都可以幫助我在哪裏我錯了

+0

把打印語句之後'如果公司== 「可持續能源論壇 - Zertifizierungen」:'。看看是否打印。如果是這樣,你知道錯誤不在於if-test。 –

+0

'x'和'y'與比較字符串有什麼關係? – poke

+1

請檢查您的格式;縮進在Python中很重要。什麼是*公司?請注意,例如''GfSE-Zertifizierungen「!=」GfSE Zertifizierungen「'。另外,你應該在'try'塊中儘可能少;把其餘的移到'else'。 – jonrsharpe

回答

2

在python比較字符串,你應該使用==運算符。 如:

a = "hello" 
b = "hello2" 
c = "hello" 

然後

a == b # should return False 
a == C# should return True 

建議:打印變量 「公司」 的內容,以檢查什麼是它裏面。一定要有相同的大小寫(小寫/大寫字母)。

0

您可以使用==來檢查字符串是否相等。 該問題與您的if聲明不符。

>>> company="GfSE-Zertifizierungen" 
>>> if company == "GfSE-Zertifizierungen": 
     print "OK" 
    else: 
     print "NOT OK" 

輸出:

OK 

您可以使用debugger看到什麼你的代碼錯誤。

0

用於Python中字符串的==運算符將一個字符串的每個字母與另一個字符串進行比較。如果它們完全相同,則字符串是相同的。

這裏只有兩種可能是你沒有達到行

if company=="GfSE-Zertifizierungen": 

或公司實際上不是一樣的。

來幫助解決,添加類似:

try: 
    print "Got to here" 
    print company 
    if company=="GfSE-Zertifizierungen": 
     y=2 
     ....