1.成员运算符,判断某个东西是否在某个东西里包含:in,not in

name = "abcd"

if "ac" inname:print("ok")else:print("error")# 结果errorif "a" not inname:print("ok")else:print("error")# 结果error

2.布尔值 True,False

==  >  =  <=  !=(不等于)  <>(不等于)  not(非)

v = not False   # True

name = 'abcd'v= 'c' innameprint(v) # Trueifv:print('1') # 1else:print('2')

3.逻辑运算

and,or,not

user == 'alex' and (pwd == '123' or 1 == 1)

先计算口号里面的

执行顺序:

从前到后

结果

True  OR  ==>  True

True  AND  ==>  继续走

False  OR  ==>  继续走

False  AND  ==>  False

4.赋值运算

+=,-=,/=,//=,*=,%=,**

a = 3b= 3c= 8

print(a ** b) #27 次方

print(a * b) #9

print(c // a) #整除 2

print('#' * 50)  50个前面字符串部分

分类:

结果是值:

算术运算

赋值运算

结果是布尔值:

比较运算

逻辑运算

成员运算

is, is not

#is 用户对象比较 id()

sal = 5000;

sum= 5000;print(sal is sum) #True, 他们id相同

5,位运算符

'''位运算符

& 与

| 或

! 非

^ 异或

<< 左移

>> 右移'''num= 8

print(bin(num)) #0b1000, 0b表示二进制

binNum =0b1111print(int(binNum)); #15

oNum= 0o5432 #0o开头表示八进制

print(int(oNum)) #2842

print(3 & 2) #2

1. 小整数对象池

整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间。

Python 对小整数的定义是 [-5, 256] 这些整数对象是提前建立好的,不会被垃圾回收。在一个 Python 的程序中,无论这个整数处于LEGB中的哪个位置,

所有位于这个范围内的整数使用的都是同一个对象。同理,单个字母也是这样的。

In [1]: a=-5

In [2]: b=-5

In [3]: a is b

Out[3]: True

In [4]: a=256

In [5]: b=256

In [6]: a is b

Out[6]: True

In [7]: a=1000

In [8]: b=1000

In [9]: a is b

Out[9]: False

intern机制处理空格一个单词的复用机会大,所以创建一次,有空格创建多次,但是字符串长度大于20,就不是创建一次了。

In [13]: a="abc"

In [14]: b="abc"

In [15]: a is b

Out[15]: True

In [16]: a="helloworld"

In [17]: b="helloworld"

In [18]: a is b

Out[18]: True

In [19]: a="hello world"

In [20]: b="hello world"

In [21]: a is b

Out[21]: False

s1 = "abcd"

s2 = "abcd"

print(s1 is s2)

s1 = "a" * 20

s2 = "a" * 20

print(s1 is s2)

s1 = "a" * 21

s2 = "a" * 21

print(s1 is s2)

s1 = "ab" * 10

s2 = "ab" * 10

print(s1 is s2)

s1 = "ab" * 11

s2 = "ab" * 11

print(s1 is s2)

# True

# True

# False

# True

# False

2.大整数对象池。说明:终端是每次执行一次,所以每次的大整数都重新创建,而在pycharm中,每次运行是所有代码都加载都内存中,属于一个整体,所以

这个时候会有一个大整数对象池,即处于一个代码块的大整数是同一个对象。c1 和d1 处于一个代码块,而c1.b和c2.b分别有自己的代码块,所以不相等。

C1.b is C2.b

In [22]: a=1000

In [23]: b=1000

In [24]: a is b

Out[24]: False

In [25]: a=-1888

In [26]: b=-1888

In [27]: a is b

Out[27]: False

In [28]:

c1 = 1000

d1 = 1000

print(c1 is d1) # True

class C1(object):

a = 100

b = 100

c = 1000

d = 1000

class C2(object):

a = 100

b = 1000

print(C1.a is C1.b) # True

print(C1.a is C2.a) # True

print(C1.c is C1.d) # True

print(C1.b is C2.b) # False

python求5_python(五)——运算符,小整数对象池相关推荐

  1. python整数池_【Python】Python中神奇的小整数对象池和大整数对象池

    小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间. Python 对小整数的定义是 [-5, 256] 这些整数对象是提前建立 ...

  2. Python的小整数对象池

    1. 小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间. Python 对小整数的定义是 [-5, 257) 这些整数对象是提 ...

  3. python求5_Python 5 运算符

    数学运算符: + 加                 1 + 1 = 2 -   减 2 - 1 = 1 ×  乘 2 × 2 = 4 /   除 3 / 2 = 1.5 不同版本可能显示小数位数不同 ...

  4. Python中小整数对象池和大整数对象池

    1.小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间. Python 对小整数的定义是 [-5, 256] 这些整数对象是提前 ...

  5. 小大整数对象池及intern机制

    1.    小整数对象池 Python   对⼩整数的定义是[-5,   256] 2.    大整数对象池 每⼀个⼤整数,均创建⼀个新的对象. a = 100 b = 100 # print(a i ...

  6. python整数池_对Python中小整数对象池和大整数对象池的使用详解

    1. 小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间. Python 对小整数的定义是 [-5, 256] 这些整数对象是提 ...

  7. 学习python第十五天,面对对象

    学习python第十五天,面对对象 面对对象又叫劝退对象,要么劝退你的对象,要么python劝退你,hhhh 开玩笑,但是这块知识点确实比较难 面向对象编 面向对象编程 指令式编程---->面向 ...

  8. python输入一个数字n、计算1到n的和_怎么用python求1到n所有整数的和

    计算题算是python实例里最基础的一项内容,经常能碰到的就是求和,下面针对求和,给大家讲解一个可以套用的方案,一起来看下吧~ 我们要实现这样一个功能:计算1到任意一个我们给出的整数之间的数字之和是多 ...

  9. python - 求商和余数“/“ “//“ “%“运算符的区别

    / 表示浮点数除法, 结果中保留小数点 num = 5 num /= 2 print(num) # 输出 2.5 // 表示整数除法,返回不大于结果的一个最大的整数. num = 5 num //= ...

最新文章

  1. javascript编写_如何通过编写自己的Web开发框架来提高JavaScript技能
  2. 一图看清全球270家典型区块链服务商
  3. 有关无人驾驶汽车的思考
  4. mysql vpformysql引擎_MySQL InnoDB引擎B+树索引简单整理说明
  5. Java黑皮书课后题第6章:**6.22(数学:平方根的近似求法)实现Math类中dsqrt方法的技术:巴比伦法nextGuess = (lastGuess + n / lastGuess) / 2
  6. 软件设计师 - 算法思想
  7. net 中web.config一个配置文件解决方法 (其他配置文件引入方式)
  8. LeetCode 542 01 矩阵
  9. dbvisualizer free 9.5.6中文乱码
  10. 水晶报表横向打印BUG处理
  11. 转载:给自己一个警示
  12. 创建模式--辛格尔顿
  13. php music player,cloudmusic.php
  14. 视频教程-备战2020毕业季—毕业设计论文实战课程讲解-.NET
  15. Example文件简介
  16. IO流---Reader和Writer
  17. 『德不孤』Pytest框架 — 14、Pytest参数化
  18. 【从零开始学习MySql数据库】(3)函数与子查询和连接查询
  19. 【客户服务】客户流失该如何应对
  20. 计算机初级培训教学大纲,计算机初级培训教学大纲(范文).doc

热门文章

  1. cookie关键字_我遇过的最难的Cookie问题
  2. sklearn中的xgboost_xgboost来了
  3. Linux上部署、安装nodejs
  4. uboot引导kernel - 2- uboot/kernel需要放在DDR什么位置的问题
  5. mybatis简化实现思路
  6. MyEclipse快捷键
  7. Android App优化之延长电池续航时间
  8. 【cs229-Lecture2】Linear Regression with One Variable (Week 1)(含测试数据和源码)
  9. 金融时报:谷歌撤离中国有99.9%的可能性
  10. 【error】error: field * has incomplete type