本文作者:林箖霖😉
本文原创,未经允许,禁止转载!
Python中的数据类型
3. Python中的数据类型
- 在Python中,数据类型分为整型(int)、浮点型(float)、字符型(str)、布尔型(bool)
- 在Python中的变量赋值不需要先声明数据类型
3.1 字符类型赋值方法
# 可以使用单引号,也可以使用双引号
str1 = 'abc'
str2 = "abcd"
print(str1, type(str1), str2, type(str2)) # abc <class 'str'> abcd <class 'str'>
3.2 整型赋值方法
# 赋值运算符
c = 10 # 十进制
e = 0b100 # 二进制
f = 0o100 # 八进制
g = 0x100 # 十六进制
print(c, e, f, g) # 10 4 64 256
3.3 数据类型转换
3.3.1 布尔型(bool)转其他类型
-
布尔型(bool)中,True代表int类型中的 1 ,False代表int类型中的 0
a = True b = False # bool转int a = int(a) b = int(b) print(a, type(a), b, type(b)) # 1 <class 'int'> 0 <class 'int'> # bool转str a = str(a) b = str(b) print(a, type(a), b, type(b)) # 1 <class 'str'> 0 <class 'str'> # bool转float a = float(a) b = float(b) print(a, type(a), b, type(b)) # 1.0 <class 'float'> 0.0 <class 'float'>
3.3.2 其他类型转字符型(str)
-
所有类型都可以转化为str类型,通常使用str()函数,或者可以通过直接加 ’ ’ 的方法
# 其他类型可以无条件转化为str类型 c = 123 d = 123.3 e = True print(str(c), type(str(c)), str(d), type(str(d))) # 123 <class 'str'> 123.3 <class 'str'> print(str(e), type(str(e))) # True <class 'str'> # 也可以通过直接加''转化,这个方法类似于定义字符串 f = '1234' print(f, type(f)) # 1234 <class 'str'>
3.3.3 其他类型转整型(int)
-
文字类和小数类字符型(str)无法转化为整型(int)
# str类型转化为int类型 str1 = '123' str2 = '123.3' str3 = '张三' print(int(str1), type(int(str1))) # 123 <class 'int'> print(int(str2), type(int(str2))) # ValueError: invalid literal for int() with base 10: '123.3' print(int(str3), type(int(str3))) # ValueError: invalid literal for int() with base 10: '张三'
-
浮点型(float)转化为整型(int)的时候,小数位会被抹掉
# float类型转化为int类型 f1 = 123.33 f2 = 55.0 print(int(f1), type(int(f1))) # 123 <class 'int'> print(int(f2), type(int(f2))) # 55 <class 'int'>
3.3.4 其他类型转浮点型(float)
-
文字类字符串无法转化为float类型
# str类型转flaot类型 str4 = '123' str5 = '123.4' str6 = 'zhang' print(float(str4), type(float(str4))) # 123.0 <class 'float'> print(float(str5), type(float(str5))) # 123.4 <class 'float'> print(float(str6), type(float(str6))) # ValueError: could not convert string to float: 'zhang'
-
整型(int)转化为浮点型(float)会在其末尾加上 ’ .0 ’
# int类型转float类型 a = 2 b = 10 print(float(a), type(float(a))) # 2.0 <class 'float'> print(float(b), type(float(b))) # 10.0 <class 'float'>