无法将字符串转换为整数python

时间:2014-02-06 16:05:21

标签: python string dictionary tuples

我在这样的元组中有一个字符串:

params': {
    'rtinseconds': '57.132',
    **'charge': '3+'**, 
    'pepmass': (822.6547241, None), 
    title': '20130630_006.d, MS/MS of 822.6547241 3+ at 0.9522 mins'
}

我正在尝试读取并将电荷'3+'的值转换为整数值3.

我尝试了以下代码,其中我读取字符串中的第一个字符并将其存储在单独的变量中,然后尝试将其转换为int,但不起作用。 3的类型仍然是str。有没有人有任何建议?

        temp_z = item['params']['charge']
        z = temp_z[0:1]
        str(z)
        int(z) 

1 个答案:

答案 0 :(得分:1)

在简单的情况下:

z = int(params['charge'].replace('+',''))

但是,如果您的商品可能带有负电荷,则可能需要:

if '+' in params['charge']:
    z = int(params['charge'].replace('+',''))
else:
    z = -int(params['charge'].replace('-',''))