当前位置: 首页 > 面试题库 >

写一个方法,把字符串转为数字,比如 str="1234",变成 int 1234。并且测试这个程序。

萧韬
2023-03-14
本文向大家介绍写一个方法,把字符串转为数字,比如 str="1234",变成 int 1234。并且测试这个程序。相关面试题,主要包含被问及写一个方法,把字符串转为数字,比如 str="1234",变成 int 1234。并且测试这个程序。时的应答技巧和注意事项,需要的朋友参考一下
def StrToInt(a):
    res ,mult,flag = 0,1,1
    if not isinstance(a,str):
        raise TypeError("a is not str")
    if a[0] =='-' or a[0] == '+':
        if a[0] == '-':
            flag = -1
        a = a[1:]
    for i in range(len(a)-1,-1,-1):
        if '9' =a[i] = '0':
            res +=(ord(a[i]) -48) * mult
            mult = mult *10
        else :
            return 0
    return res * flag

def test_strToInt2(self):
    with pytest.raises(TypeError):
        StrToInt(34)

 

测试用例:
def test_strToInt3(self):
    assert StrToInt('测试赛') == 0

def test_strToInt4(self):
    assert StrToInt('+2147689') == 2147689

def test_strToInt5(self):
    assert StrToInt('45') == 45

def test_strToInt6(self):
    assert StrToInt('1a33') == 0

def test_strToInt7(self):
    assert StrToInt('-5') == -5
 类似资料:
  • 本文向大家介绍写一个方法把科学计数法转换成数字或者字符串相关面试题,主要包含被问及写一个方法把科学计数法转换成数字或者字符串时的应答技巧和注意事项,需要的朋友参考一下 function c(a) { return a.replace(/^(\d+)(?:.(\d+))*eE(\d+)/,(_,a,a1,p,n)=>{ a1=a1||'' if(p==='-'&&n>0) { return '0.'

  • 本文向大家介绍写一个方法把对象和字符串互转相关面试题,主要包含被问及写一个方法把对象和字符串互转时的应答技巧和注意事项,需要的朋友参考一下 对于对象里面如果只有普通的像int、string、bool类型当然可以直接使用JSON.stringify和JSON.parse()但是当里面有函数方法的时候就会被忽略,这时候需要用到序列化函数去处理。

  • 本文向大家介绍写一个把字符串大小写切换的方法相关面试题,主要包含被问及写一个把字符串大小写切换的方法时的应答技巧和注意事项,需要的朋友参考一下 var reversal = function(str){ var newStr = ''; if(Object.prototype.toString.call(str).slice(8,-1) !== 'String'){ alert("请填写字符串")

  • 本文向大家介绍写一个把数字转成中文的方法,例如:101转成一百零一相关面试题,主要包含被问及写一个把数字转成中文的方法,例如:101转成一百零一时的应答技巧和注意事项,需要的朋友参考一下 函数名很弱智,不要在意(

  • 本文向大家介绍写一段程序,删除字符串a中包含的字符串b,举例 输入a = "asdw",b = "sd" 返回 字符串 “aw”,并且测试这个程序。相关面试题,主要包含被问及写一段程序,删除字符串a中包含的字符串b,举例 输入a = "asdw",b = "sd" 返回 字符串 “aw”,并且测试这个程序。时的应答技巧和注意事项,需要的朋友参考一下  

  • 下面值是存在数据库的, 我拿出来用json_decode转成了数组, 但是数组没办法一下子在前端展示,我想把上面的转成json或字符串,并且转后汉字还是汉字。这怎么实现?