下面是一个示例代码,可以实现将字符串转换为整数的功能:
def atoi(s):
# 去除字符串首尾的空格
s = s.strip()
# 判断字符串是否为空
if len(s) == 0:
return 0
# 判断字符串的第一个字符是否为正负号
sign = 1
if s[0] == '-':
sign = -1
s = s[1:]
elif s[0] == '+':
s = s[1:]
# 遍历字符串,将字符转换为数字
result = 0
for c in s:
# 判断字符是否为数字
if not c.isdigit():
break
result = result * 10 + int(c)
# 判断结果是否超出整数范围
result = min(max(result * sign, -2**31), 2**31 - 1)
return result
# 示例测试
print(atoi("12345")) # 输出: 12345
print(atoi("-12345")) # 输出: -12345
print(atoi(" 12345 ")) # 输出: 12345
print(atoi("12345abc")) # 输出: 12345
print(atoi("abc12345")) # 输出: 0
print(atoi("-91283472332")) # 输出: -2147483648
该示例代码中的atoi
函数实现了将字符串转换为整数的功能。代码首先去除字符串首尾的空格,然后判断字符串的第一个字符是否为正负号,并根据情况设置符号。接着遍历字符串中的每个字符,将其转换为数字,并计算出最终的结果。最后,判断结果是否超出整数范围,并返回结果。