'''********************************************************
Func Name: addZero
Para: x : 字符串
y : 长度
return: x : 处理后的字符串
Desc: 将字符串修改为指定长度,不足的补0,只限于加长,不剪短
Date: 20190711
Auth: yanerfree
********************************************************'''
def addZero(x, y):
while True:
if len(x) < y:
x = '' + x
else:
break return x

 '''********************************************************
Func Name: hexToInt
Para: h:16进制数
return: datalen: 10进制数
Desc: #将 16进制数 转换为 INT
Date: 20190711
Auth: yanerfree
********************************************************'''
def hexToInt(h):
return int(h,16) '''********************************************************
Func Name: intToHex
Para: n : 10进制数
x : 几个字节
return: 16进制字符串
Desc: 将 16进制数 转换成对应的16进制字符串,并根据字节长度补0,不带0x或者 x
Date: 20190711
Auth: yanerfree
********************************************************'''
def intToHex(n, x):
num = hex(n)
#print(num)
num_list = num.split('0x')[1:]#num_list = num.split('0x')[1] return addZero(num_list[0].upper(), x*2) '''********************************************************
Func Name: checkValue
Para: h : 需要做异或的16进制字符串
return: value : 异或结果
Desc: 将传入的16进制按2位(8bit) 做异或运算,前2个异或后的结果与下一个异或,一直到结束
Date: 20190712
Auth: yanerfree
********************************************************'''
#将2位的16进制转换成能够用户异或计算的16位数,即'6F'--> 0x6F --> 10进制
#16进制转10进制
def add0x(s):
return eval('0x'+s) def checkValue(h):
#先取前2组,每组2个做异或运算
value = add0x(h[0:2]) ^ add0x(h[2:4])#异或后是10进制数 for i in range(4, len(h), 2):
value = value ^ add0x(h[i:i+2])
#print('异或结果--10进制:',value)
#print('异或结果--16进制:',hex(value))
#print('转换成16进制intToHex(value, 1):',intToHex(value, 1))
#value = add0x(intToHex(value, 1)) value = intToHex(value, 1)#16进制的校验值,1个字节
return value.upper()

python 计算异或的更多相关文章

  1. [转载] python 计算字符串长度

    本文转载自: http://www.sharejs.com/codes/python/4843 python 计算字符串长度,一个中文算两个字符,先转换成utf8,然后通过计算utf8的长度和len函 ...

  2. Python计算斗牛游戏的概率

    Python计算斗牛游戏的概率 过年回家,都会约上亲朋好友聚聚会,会上经常会打麻将,斗地主,斗牛.在这些游戏中,斗牛是最受欢迎的,因为可以很多人一起玩,而且没有技术含量,都是看运气(专业术语是概率). ...

  3. 利用Python计算π的值,并显示进度条

    利用Python计算π的值,并显示进度条  第一步:下载tqdm 第二步;编写代码 from math import * from tqdm import tqdm from time import ...

  4. 用Python计算幂的两种方法,非递归和递归法

    用Python计算幂的两种方法: #coding:utf-8 #计算幂的两种方法.py #1.常规方法利用函数 #不使用递归计算幂的方法 """ def power(x, ...

  5. Python计算分位数

    Python计算分位数    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/gdkyxy2013/article/details/80911514 ...

  6. python 计算校验和

    校验和是经常使用的,这里简单的列了一个针对按字节计算累加和的代码片段.其实,这种累加和的计算,将字节翻译为无符号整数和带符号整数,结果是一样的. 使用python计算校验和时记住做截断就可以了. 这里 ...

  7. 为了用python计算一个汉字的中心点,差点没绞尽脑汁活活累死

    为了用python计算一个汉字的中心点,差点没绞尽脑汁活活累死

  8. python计算时间差的方法

    本文实例讲述了python计算时间差的方法.分享给大家供大家参考.具体分析如下: 1.问题: 给定你两个日期,如何计算这两个日期之间间隔几天,几个星期,几个月,几年? 2.解决方法: 标准模块date ...

  9. 用Python计算最长公共子序列和最长公共子串

    如何用Python计算最长公共子序列和最长公共子串 1. 什么是最长公共子序列?什么是最长公共子串? 1.1. 最长公共子序列(Longest-Common-Subsequences,LCS) 最长公 ...

随机推荐

  1. 快速上手最新的 Vue CLI 3

    翻译:疯狂的技术宅 原文:blog.logrocket.com/getting-sta- 概要:本文将指导你快速上手 Vue CLI 3,包括最新的用户图形界面和即时原型制作功能的使用步骤. 介绍 尤 ...

  2. PHP的闭包和匿名函数

    闭包函数是创建时,封装周围状态的函数,而匿名函数是没有名称的函数,匿名函数可以被赋值给变量,也就是所谓的函数式编程,也可以传递参数,经常作为回调函数.(理论上讲:匿名函数和闭包不算是一个概念,php却 ...

  3. Vim Install-Could not get lock......

    在Ubuntu下安装Vim编辑器时,出现错误: 可能原因: 上次安装或更新没有正常完成,导致资源被锁. 解决方案: 删除异常资源,重新下载: 注意 删除异常资源时,一定要切换到root用户,否则操作无 ...

  4. 图论--LCA--在线RMQ ST

    板子测试POJ1330,一发入魂,作者是KuangBin神犇,感谢?‍ #include <cstdio> #include <cstring> #include <al ...

  5. Spring Boot Actuator H2 RCE复现

    0x00 前言 Spring Boot框架是最流行的基于Java的微服务框架之一,可帮助开发人员快速轻松地部署Java应用程序,加快开发过程.当Spring Boot Actuator配置不当可能造成 ...

  6. Python第三方库之Numpy库

    概述 Numpy  最基本的库,是用于处理含有同种元素的多维数组运算的第三方库 —科学计算包,python数据分析及科学计算的基础库,几乎支撑所有其他库 —支持N维数组运算.处理大型矩阵.成熟的广播函 ...

  7. Java中的动态定义数组

    1.一维矩阵的动态定义(代码注释) 1.1方法一 package dongtai; import java.util.Scanner; import java.util.ArrayList; publ ...

  8. thinkphp5.x系列 RCE总结

    Thinkphp  MVC开发模式 执行流程: 首先发起请求->开始路由检测->获取pathinfo信息->路由匹配->开始路由解析->获得模块.控制器.操作方法调度信息 ...

  9. OpenCV 4下darknet修改

    darknet的安装使用直接在官网上获取.https://pjreddie.com/darknet/ 但我用的是OpenCV4.1.1,make时会在image_opencv.cpp中有两个错误. 1 ...

  10. C. Barcode dp

    https://codeforces.com/problemset/problem/225/C 这个题目和之前一个题目很像 https://www.cnblogs.com/EchoZQN/p/1090 ...