从零开始的python自学之旅(二)
Day 2
- 常见的数据类型
(一些注意的事项:0b45123二进制,45123十进制,0o45123八进制,0x45123 十六进制)
1.float
具有不准确性,如
会打印出3.30000000003的结果(其他的值不一定会出现这样的紊乱结果,也有可能是对的)a=1.1 b=2.2 print(a+b)
因此可采用如下的解决方法
2.boolfrom decimal import Decimal print(Decimal('1.1')+Decimal('2.2'))
True,False对应的数值为1,0(记得首字母大写)
3.str
‘xxx’,“xxx"单行字符串
‘’‘xxx’’’,”"“xxx”""多行字符串
- 字符类型转化
会报错,因为他们的字符类型不同a=2.3 b=False print(a+b)
在需要转化的变量前加对应的数据类型,如
输出结果为a=2.3 b=False print(str(a)+str(b))
2.3False
- 注释
#为单行注释
‘’‘xxx’’'为多行注释(三个双引号也行)除了注释本身,注释#还可以代表更换文件编码格式,比如在代码开头输入
#coding:gbk
,保存的文件会默认采用ANSI编码格式(注:正常情况下默认编码为UTF-8)
- input()函数
示例a=int(input('请输入第一个数')) b=int(input('请输入第二个数')) print(a+b)
-
运算符号
1.**为幂运算
2.//为整除运算(特别注意一正一负运算向下取整,即-9//4=-3)
3.%为取余运算(一正一负运算需要注意,根据公式计算:余数=被除数-除数*商,所以9%-4=9-(-4)*(-3)=-3
-9%4=-9-(4)*(-3)=34.=可连续赋值,如
a=b=c=20
,则a,b,c的值都为20。
还有一种赋值方式:如a,b,c=20,30,40
,此方法必须保证=两侧的个数相同有意思的一点是,如果两个变量的值相同,那么他们的id也相同
5.+=,-=,/=,*=不一一介绍,但其中有值得注意的一点:
/=可能改变变量的类型,如
a=3 a/=2
那么a的字符类型就由int型转化成了float型6.交换函数
a,b=b,a
可交换a,b二者的值
7.比较运算符
示例a=5 b=8 print(a>b) #Flase
还有一个与==号类似的比较符号’is’,用于比较两个变量的id ,相反的语句为’is not’示例
a is not b
8.布尔运算符
直接上示例a,b=1,2 print(a==1 and b==2) #True print(a==1 or b>2) #True print(not b) #Flase s='hello world' print('w'in s) #True print('k'not in s) #True
9.位运算符
a=0b1000 #也可以写成a=8 b=0b0100 #也可以写成b=4 print(a&b) #0 print(a|b) #12 print(a>>2) #2 print(a<<2) #32