Python_fundamentals
Data type and conversion
Int
-
Python默认十进制
print('十进制',118) print('二进制',0b10101111)#二进制0b开头 print('八进制',0o176)#八进制0o开头 print('十六进制',0x1EAF)#十六进制0X开头
-
output
十进制 118 二进制 175 八进制 126 十六进制 7855 Process finished with exit code 0
Float
-
计算机存储浮点数用的是二进制→有些会有误差,有些没有
a = 1.1 print(type(a)) b = 2.2 print(a+b) c = 2.1 print(a+c)
-
output
<class 'float'> 3.3000000000000003 3.2 Process finished with exit code 0
-
solve
#解决 from decimal import Decimal print(Decimal('1.1')+Decimal('2.2'))
-
output
3.3 Process finished with exit code 0
Bool
-
布尔值可以转换成整数计算
f1 = True f2 = False print(f1,type(f1)) print(f2,type(f2)) #布尔值可以转成整数计算 print(f1+1)#2,1+1的结果→True表示1 print(f2+1)#1,0+1的结果→False表示0
-
output
True <class 'bool'> False <class 'bool'> 2 1 Process finished with exit code 0
Str
-
‘’‘str’’'和""“str”""可以在不同行其他没区别
str1 = '人生苦短,我用python' print(str1,type(str1)) str2 = "人生苦短,我用python" print(str2,type(str2)) str3 = '''人生苦短, 我用python''' print(str3,type(str3)) str4 = """人生苦短, 我用python""" print(str4,type(str4))
-
output
人生苦短,我用python <class 'str'> 人生苦短,我用python <class 'str'> 人生苦短, 我用python <class 'str'> 人生苦短, 我用python <class 'str'> Process finished with exit code 0
Data type conversion
-
float→int,保留整数部分
-
str→int,字符串必须为整数串
name = '张三' age = 20 print(type(name),type(age)) print('我叫'+name+'今年'+str(age)+'岁')#当将str类型与int类型连接时报错,解决方案→类型转换 float1 = 76.77 s = '76.77' f = True print(int(float1),type(int(float1)))#float转int,保留整数 # print(int(s),type(int(s)))#str转成int类型,字符串为必须为数字串(整数) print(int(f),type(int(f)))
-
output
<class 'str'> <class 'int'> 我叫张三今年20岁 76 <class 'int'> 1 <class 'int'> Process finished with exit code 0