在python中将字符串转换为整数

时间:2017-01-19 23:06:48

标签: python string

def handle_client_move(req):
    strmove = req.decode('utf-8')
    strmove = strmove[-1:]
    sendmove = strmove.strip()
    print(int(sendmove))
    strmove = '--' + strmove
    return(strmove)

我得到这个错误:

ValueError: invalid literal for int() with base 10: ''

无法将strmove转换为整数。

2 个答案:

答案 0 :(得分:2)

strmove[-1:]只会在字符串中显示最后一个符号。如果它是空格,那么strmove.strip()将返回空字符串。你的错误

ValueError: invalid literal for int() with base 10: ''

表示''(空字符串)是整数的无效文字(这是真的)。​​

因此,根据您的需要,您可能需要在strip()之前strmove[-1:]或其他内容。

答案 1 :(得分:2)

要处理此特定问题,您尝试将空字符串转换为整数,可以执行以下操作:

int(strmove or 0)

如果strmove是空字符串,这是假的,strmove or 0评估为0,并且作为int()的参数可以正常工作。如果更合适,你也可以使用其他一些数字。