python 内部自带大整数运算能力,整数运算不会溢出,只要内存足够,就oK

下面的例子演示了两个32位整数加法的情况(通过位运算实现),为了模拟溢出的效果,必须人工的进行位运算,~运算符除了求反,还是二进制的补运算符,运算过后的二进制数字按照补码解释,例如 ~(0011 1100) = (1100 0011) = -61

def getSum(a, b):

"""

:type a: int

:type b: int

:rtype: int

"""

MAX = 0X7fffffff

MIN = 0X80000000

while b != 0 :

a,b = a^b,(a&b)<<1

print(" a = {0:b},b = {1:b}".format(a,b))

return a

def getSum_(a, b):

"""

:type a: int

:type b: int

:rtype: int

"""

MAX = 0x7FFFFFFF

MIN = 0x80000000

mask = 0xFFFFFFFF

while b != 0:

a, b = (a ^ b) & mask, ((a & b) << 1) & mask

print(type(a))

print(" a = {0:b},b = {1:b}".format(a,b))

return a if a <= MAX else ~(a^mask)

print(getSum_(-1,-1))

print(getSum(-1,1))

补充:python 循环内部添加多个条件判断会出现越界

1.循环遍历数组是,想添加条件修改时,只删除第一个

# -*- coding: utf-8 -*-

a=[11,22,33,44,55]

for i in a:

if i == 11 or i ==22:

a.remove(i)

for i in a:

print(i)

'''

33

55

[Finished in 0.1s]

'''

2.应该引入被删除为一个数组

# -*- coding: utf-8 -*-

a=[11,22,33,44,55]

b=[]

for i in a:

if i == 11 or i ==22:

b.append(i)

for i in b:

a.remove(i)

for i in a:

print(i)

'''

33

44

55

[Finished in 0.1s]

'''

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

时间: 2019-06-27

python数组越界_python 整数越界问题详解相关推荐

  1. python 32bit数据结构_python实现bitmap数据结构详解

    bitmap是很常见的算法设计,例如用以Bloom Filter中:用以无反复整数金额的排列这些.bitmap一般根据数组来完成,数组中每一个原素能够当做是一系列二进制数,全部元素组成更高的二进制结合 ...

  2. python输出命令_Python输出各行命令详解

    创建main.py文件并粘贴下面代码 点击右键运行Debug 'main'后,下方的Debug窗口会出现ImportError: No module named 'bottle'这样的提示,提示导入b ...

  3. python md5加密_Python MD5加密实例详解

    详解Python MD5加密 Python 3下MD5加密 # 由于MD5模块在python3中被移除 # 在python3中使用hashlib模块进行md5操作 import hashlib # 待 ...

  4. python 相对导入_Python相对导入机制详解

    Google FEB 26TH, 2015 Python相对导入机制详解 这个答案能解释大多关于 relative import,即相对导入的疑惑,讲解十分详尽清晰,算是 SO 上被低估的一个答案. ...

  5. 简述python文件操作_Python 文件操作的详解及实例

    Python 文件操作的详解及实例 一.文件操作 1.对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. ...

  6. python 类 实例_Python类的实例详解

    类(class)是一个用户自定义类型,开发者可以将其实例化以获得实例(instance),实例表示这种类型的对象.在Python中,类就是对象,开发者可以像对其他对象那样处理函数,可以在调用函数时传递 ...

  7. python pdb 安装_Python调试工具pdb使用详解

    Python调试工具pdb使用详解 [简介] pdb是Python自带的一个包,为python程序提供了一种交互的源代码调试功能. [使用方法] 1. 使用命令: python -m pdb xxx. ...

  8. python queue模块_Python的queue模块详解

    Queue Queue是python标准库中的线程安全的队列(FIFO)实现,提供了一个适用于多线程编程的先进先出的数据结构,即队列,用来在生产者和消费者线程之间的信息传递 基本FIFO队列 clas ...

  9. python 字典程序_Python 字典(Dictionary)操作详解

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = { ...

最新文章

  1. php while循环控制实例讲解
  2. Sql Server 2005 ROW_NUMBER 函数实现分页
  3. CentOS6安裝Cacti
  4. runtime官方文档
  5. JSP之jsp内置标签
  6. win10不自带扫雷,想玩扫雷怎么办?自己造一个扫雷
  7. 关于Si24r1调试的总结
  8. ubuntu安装windows 字体
  9. linux主目录下的文件夹改回英文
  10. RNN预测股票开盘价(TensorFlow,tensorboard可视化)
  11. (初学笔记1)python读多波段遥感影像并存到三维数组中
  12. ICP经营许可证条件
  13. 技法(但请少用):为非活动窗口绘制活动的标题栏
  14. 2020年3月全国程序员工资统计,平均工资13820元
  15. Linux图形子系统
  16. PMO和PM如何准备项目状态报告及进行项目进度汇报?【附项目状态表和进度跟踪表】
  17. 屠龙少年终成恶龙!Adobe豪掷200亿美元收购Figma,设计圈炸了!
  18. 人生忠告:给男人和女人(ZT)
  19. 深度学习--超参数(持续更新)
  20. T字形路口小车如何要c语言编程,科二皮卡怎么找30公分线

热门文章

  1. BST(binary search tree)类型题目需要用到的头文件binary_tree.h
  2. UE卡通风格游戏场景制作视频教程
  3. FlameScope 更高级全面的火焰图
  4. Rocksdb 事务(一): 隔离性的实现
  5. qt 找不到 -lpulse-mainloop-glib,找不到 -lpulse问题
  6. 2018.11.12
  7. 下面为初学者分享一下SQL 数据库学习资料
  8. ruby gems列表
  9. 生成器/迭代器 和 函数的递归
  10. 一个在raw里面放着数据库文件的网上例子