-
主要内容:
数据类型Number:
- python中的数字没有大小限制
常见的数字类型
- 整数:
1、没有小数部分(包含正数、负数、0)
- 二进制:
以0b 开头的0、1串,只有0和1,例如0b
#二进制a=0b110print(a);
- 八进制:
以0o开头的0到7之间的串,例如:0o71
#八进制b=0o71print(b);
- 十六进制:
以0x组成的由0-9、a-f构成的串,例如:0x53f2
#十六进制c=0x53f2print(c);
浮点数
- 就是通俗意义上 的小数量
- 常见的案例格式:
- 3.14
- 3.
- 0.4
- .4
- 科学计数法
- 定义跟数学定义 一致
- 写法就是e后面跟整数用来表示10的指数
#科学计数法d=3.14e2print(d);
复数 complex
- 与数学定义一致
- 复数的虚部用j/J表示
- 例如:
- 5+4j
- 4j
- (4)
#复数a1=4jprint(a1)
布尔值
- 布尔值就是用来表示真假
- 只有两个值:true/false
- 在python中布尔值可以当数字使用
- 布尔值如果当数字使用,true=1,false=0
- 如果数字用来当作布尔值使用,0=false,其余当作true
#布尔值当数字使用age=18+trueprint(age)age=18+falseprint(age)#判断语句a=-1if a: print("负数是true")else: print("负数是false")
字符串
- 表达文字信息的内容
- 形式是最引号引起了的一段内容
- 单引号
- 双引号
- 三引号,可以用来表示多行信息
单双引号含义一致
#字符串#双引号love="我爱陈雪欣"print(love)#单引号love='我爱陈雪欣'print(love)#三引号,可以用来多行信息love='''我爱陈雪欣 我爱陈 就像爱着北国的雪 '''
None
- 表示没有,通常来占位
- 比如返回,用来表示返回一个空
表达式
- 由一个或者几个数字或者运算符合成第一行代码
- 通常返回一个结果
运算符
- 由一个以上的值经过一系列的运算得到新值的过程就叫运算
- 用来操作运算符号叫运算
- 运算符分类
- 算数运算符
- 比较或者关系运算符
- 赋值运算符
- 逻辑运算符
- 位运算
- 成员运算符
- 身份运算符
#表达式案例a=9+6print(a)
算数运算符
- 用来进行算数运算的符号
- 通常用来表示加减乘除
- Python没有自增自减运算符
#算术运算符案列#加减乘除跟数学意义基本一致a=9-5print(a)b=9+6print(b)c=9*9print(c)#python中的除法:普通除法,地板除、取余#正常除法a1=9/3#此操作符在Python2.x和Python3.x中有些不同print(a1)#地板除,取整b1=9//4print(b1)
比较运算符
- 对两个内容进行比较的运算符
- 结果一定是布尔值,既true/false
#等于 ==a=3==4print(a)#结果:false#不等于 !=a=3 !=4print(a)#其他运算符:>、>=、<、<=
赋值
- 把一个值放到变量里边去
#赋值符号 =a = 9#复杂赋值a = b = 9a,b=1,2#赋值的缩写c=1c=c+1c+=3#c=c+1#所有数学运算符都可以缩写#Python中没有++,--
逻辑运算符
- 对布尔类型变量或者值进行运算的符号
- and:逻辑与
- or:逻辑或
- not:逻辑非
- Python里面的逻辑运算没有异域
- 运算规制:
- and看做乘法,or看做加法
- true看做1,false看做0
- 则逻辑运算就能转换成整数数字运算
- 最后结果如果是0则为false,否则为false
#逻辑表达案例a = trueb = truec = falseaa = a and b#左边表达式可以转换成1*1print(aa)bb = a and cprint(bb)#运行结果:true
逻辑运算的短路问题
- 逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再进行计算,直接返回
#短路问题案例def a(): print('a') return truedef b(): print('b') return trueif a () and b (): print("我爱陈雪欣")print("*" * 20)#字符串乘以数字,表示对是这个字符串重复多少遍if a() or b(): print('我爱陈雪欣')aaa = a()and b() print(aaa)bbb = a() or b()#短路发生print(bbb)
成员运算符
- 用来检测一个值或者变量是否在某个集合里面
- in:成员运算符
- not in:不在里边的意思
#in 案例L= [1,2,3,4,5,6]a=7aa= a in Lprint(aa)#a没有在里面aa = a not in Lprint(aa)#结果:false、true
身份运算符
- 用来确定两个变量是否同一变量
- is:变量运算符
- is not:不是
#身份运算符案例b = 5a = 4aa = a is bprint(aa)#a,b仅仅是值一样,并不代表a,b是一个变量a=555554555555b=666666666666cc = a is bprint(cc)结果:false、false
对比案例
a=5b=5aa = a is bprint(aa)#结果:true 和上面不同 #正确理解以上案例的不同
解释:
学Python的想必都知道,对整数N/in[-5,256],解释器对他们做了单独的处理,放进了固定的内存中,不因你每次运行而变化。不仅对小整数有这样的处理,内建的类(int、ststicmamethod、object,typeerror......)也是这样处理的。看一个变量的内存是不是这样处理的,无需运行两次,主要看id()编号的长度就行,他他们都是10位的,普通变量都是十三位的,其实并不是每次运行结果都是一样的,比如重启电脑再运行,不同的软件打开的同一个Python解释器结果也是不同(最先打开的那个会影响其他的),比如我的电脑上先打开pycharm、cmd、jupyter得到的是不同的结果,只要解释器全部关闭再打开某一个,其余的都会是这个软件的值,电脑不关机的话,软件重复关闭打开id值是一样。
运算符优先级问题:
- 小括号具有最高优先
**指数(最高优先级)
~+ - 按位翻转,一元加号和减号(最后两个的方法名:+@和-@)
+ - 加法减法
>> <<左移,右移运算符
& 位 'AND'^ |位运算符
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
nor or and 逻辑运算符