Python 如何获取数字=[“12”、“145”、“45”、“12.4”、“45,14”、“15 645”等]数字

Python 如何获取数字=[“12”、“145”、“45”、“12.4”、“45,14”、“15 645”等]数字,python,Python,你的问题很模糊。但我会为你试一试 ValueError: could not convert string to float: '45,14' 假设您只希望列表是数字,但仍然是字符串 ["12", "145", "45", "12.4", "45,14", "15 645"] 输出 digits = ["12", "145", &q

你的问题很模糊。但我会为你试一试

ValueError: could not convert string to float: '45,14'
  • 假设您只希望列表是数字,但仍然是字符串

    ["12", "145", "45", "12.4", "45,14", "15 645"]
    
    输出

    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [dgt.replace(",","").replace(".","").replace(" ","") for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [int(dgt.replace(",","").replace(".","").replace(" ","")) for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    out_str = "" 
    
    for number in digits:
        for single_number in number:
            if not single_number in [",","."," "]:
                out_str += single_number
    print(out_str)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [float(dgt.replace(",",".").replace(" ",".")) for dgt in digits]
    print(new_digits)
    


  • 如果要将它们作为整数,请使用int()将其包装

    输出

    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [dgt.replace(",","").replace(".","").replace(" ","") for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [int(dgt.replace(",","").replace(".","").replace(" ","")) for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    out_str = "" 
    
    for number in digits:
        for single_number in number:
            if not single_number in [",","."," "]:
                out_str += single_number
    print(out_str)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [float(dgt.replace(",",".").replace(" ",".")) for dgt in digits]
    print(new_digits)
    


  • 如果您希望将它们全部放在一个字符串中,那么可以执行以下操作

    [12, 145, 45, 124, 4514, 15645]
    
    输出

    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [dgt.replace(",","").replace(".","").replace(" ","") for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [int(dgt.replace(",","").replace(".","").replace(" ","")) for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    out_str = "" 
    
    for number in digits:
        for single_number in number:
            if not single_number in [",","."," "]:
                out_str += single_number
    print(out_str)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [float(dgt.replace(",",".").replace(" ",".")) for dgt in digits]
    print(new_digits)
    


  • 或者,如果您想返回每个的浮动,那么

    1214545124451415645
    
    输出

    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [dgt.replace(",","").replace(".","").replace(" ","") for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [int(dgt.replace(",","").replace(".","").replace(" ","")) for dgt in digits]
    print(new_digits)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    out_str = "" 
    
    for number in digits:
        for single_number in number:
            if not single_number in [",","."," "]:
                out_str += single_number
    print(out_str)
    
    digits = ["12", "145", "45", "12.4", "45,14", "15 645"]
    new_digits = [float(dgt.replace(",",".").replace(" ",".")) for dgt in digits]
    print(new_digits)
    

    i.replace
    不更新变量
    i
    ,它返回一个新值。