字符串转化为其他类型
字符串转化为整形
字符串转化为浮点型
字符串转化为列表
关于数据类型转化需要注意的点
字符串转化为整形:int(需要转化的字符串变量名)
举例:
str='10'
#转换前
print(type(str))
res=int(str)
#转换后
print(type(res))
print(res)
输出结果如下:
<class 'str'>
<class 'int'>
10
字符串转化为浮点型:float(需要转化的字符串变量名)
举例:
str='10'
#转换前
print(type(str))
res=float(str)
#转换后
print(type(res))
print(res)
输出结果如下:
<class 'str'>
<class 'float'>
10.0
字符串转化为列表:list(需要转化的字符串变量名)
举例:
str='10'
#转换前
print(type(str))
res=list(str)
#转换后
print(type(res))
print(res)
输出结果如下:
<class 'str'>
<class 'list'>
['1', '0']
关于数据类型转化需要注意的点:并不是所有类型的字符串都可以转化为整型,浮点型等。
举例:
s='abc'
res5 = float(s)
print(type(res5))
print(res5)
输出结果如下所示:
res5 = float(s)
ValueError: could not convert string to float: 'abc'
下面我们将它尝试转化为整形:
res5 = int(s)
ValueError: invalid literal for int() with base 10: 'abc'
下面我们将它尝试转化为列表:
<class 'list'>
['a', 'b', 'c']
通过上述所举例子,我么们可以看出,并不是所有的字符串都可以转化为整形,浮点型,列表等,他也许只能转为其中的一种类型。诸如此类的字符串还有数字和字母组成,其他特殊符号等等。
字符串在进行类型转化时,正负号具有意义,而加减法不具有意义,也就是说即便‘12+3’是由两个整形数据组成的,但由于表达式不可以直接进行转换,因此会发生报错。
举例:
输入:
print(type(int('+123')))#输出123
输出:
<class 'int'>
输入:
print(int('-12'))
输出:
-12
输入:
print(int('4-12'))
输出:
print(int('4-12'))
ValueError: invalid literal for int() with base 10: '4-12'
输入:
print(int('4+12'))
输出:
print(int('4+12'))
ValueError: invalid literal for int() with base 10: '4+12'
注意:表达式是不能直接转换,字符串转换里面不能包含字母和特殊字符