2014-12-06 33 views
0

我知道這個問題已經有很多問題了,但我只需要一小步。我試圖找出一種方法來查看某個特定值是否在括號內。我需要將括號內的值存儲爲負整數,否則爲正整數。我正在使用這個函數,但它給了我錯誤的值不在括號內。如果括號內的值或不是python的條件

def extract(string, start='(', stop=')'): 
     return string[string.index(start)+1:string.index(stop)] 

請幫忙。

+0

可能重複http://stackoverflow.com/questions/16718648/convert-a -number封閉功能於括號-字符串到一個-負整數或-FLOA) – 2014-12-06 02:16:12

回答

0

如果你只是想,如果他們存在以刪除括號和沒有括號返回數字的字符串表示,只是strip()他們:

>>> a = '(-23)' 
>>> b = '43' 
>>> a.strip('(').strip(')') 
'-23' 

>>> b.strip('(').strip(')') 
'43' 

另外,如果您想實際整數和它們存儲沒有跡象:

In [1]: def extract(s): 
    ...:  if s.startswith('(') and s.endswith(')'): 
    ...:   return -int(s[1:-1]) 
    ...:  return int(s) 
    ...: 

In [2]: extract('(23)') 
Out[2]: -23 

In [3]: extract('43') 
Out[3]: 43 
[η使用Python轉換括在括號中(字符串)到負整數的數(或浮動)](
相關問題