python3.x中处理有逗号分割的数字,并转换成整型数值

您所在的位置:网站首页 python输入有空格隔开的数字 python3.x中处理有逗号分割的数字,并转换成整型数值

python3.x中处理有逗号分割的数字,并转换成整型数值

2023-03-31 12:49| 来源: 网络整理| 查看: 265

最近用python3.0处理数据的时候遇到了个问题,对于有逗号分隔的字符串型数字的转换,没有函数可直接进行转化。

在python中一般的字符串向数字转化用int()(转化成整型),或者float()(转化成浮点型)函数即可,但是对于“123,123,098,256”这种含有“,”的字符串来说,就不能用上述函数处理。

for example:

>>> var1 = "123" >>> var2 = "123.1" >>> >>> int(var1) 123 >>> float(var2) 123.1 >>> int(var3) Traceback (most recent call last): File "", line 1, in ValueError: invalid literal for int() with base 10: '123,123'

解决方法

对于上述var3类型的字符串,可以考虑现将字符串中的“,“去掉或替换后,再进行拼接,有以下两种实现的方法:

1.去掉字符串后拼接

In [81]: var3 = "123,123" #filter(function,var),function为要对var使用的函数,下式表示只留var3中的数字 In [82]: x = filter(str.isdigit,var3) In [83]: int("".join(list(x))) Out[83]: 123123 In [84]:

2.replace方法

In [84]: var3 = "123,123" In [85]: int(var3.replace(",","")) Out[85]: 123123 In [86]:

用replace方法替换掉字符串中的","后再转化成整数 

 

以上内容如果有错误或不足的地方还望各位博友指正。

  

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3