python由列表中提取出来的浮点型字符串不能直接转换成整形

枫铃3年前 (2021-09-30)Python240

案例如下:

lst = ['636', 'system', '10', '-10', '1.1G', '114M', '95M', 'S', '45.0', '12.9', '1:15.87', 'com.android.set+\n\n']
b = lst[8]
c = int(b)

print (b)
print (type(c))

列表中第8和第9位两个为浮点型的字符串,提取出该字符串后想转成整形会报如下错误:

Traceback (most recent call last):
  File "D:\WorkSpace3\DEBUG\debug\debug.py", line 5, in <module>
    c = int(b)
ValueError: invalid literal for int() with base 10: '45.0'

如果一定要转换的话,先将该提取出来的值转成浮点型,然后再由浮点型转成整形即可,如下:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
lst = ['636', 'system', '10', '-10', '1.1G', '114M', '95M', 'S', '45.0', '12.9', '1:15.87', 'com.android.set+\n\n']
b = lst[8]
c = float(b)
d = int(c)

print (b)
print (type(c))
print (d)
print (type(d))

输出如下:

45.0
<class 'float'>
45
<class 'int'>

相关文章

Python中的eval,exec以及其相关函数

1. eval函数 函数的作用: 计算指定表达式的值。也就是说它要执行的Python代码只能是单个运算表达式(注意eval不支...

Python 定时任务的实现方式

Python 定时任务的实现方式

背景 目前所在的项目组需要经常执行一些定时任务,于是选择使用 Python 的定时器。 Python 实现定时任务 循环 sleep 这种...

pandas dataframe 过滤——apply最灵活!!!

按照某特定string字段长度过滤: import pandas as pd df = pd.read_csv('file...

python函数调用的四种方式

第一种:参数按顺序从第一个参数往后排#标准调用 # -*- coding: UTF-8 -*- def normal_invoke(x,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。