封装

class Converter(object):@staticmethoddef to_ascii(h):list_s = []for i in range(0, len(h), 2):list_s.append(chr(int(h[i:i+2], 16)))return ''.join(list_s)@staticmethoddef to_hex(s):list_h = []for c in s:list_h.append(str(hex(ord(c))[2:]))return ''.join(list_h)

调用

print(Converter.to_hex("Hello World!"))
print(Converter.to_ascii("48656c6c6f20576f726c6421"))# 等宽为2的16进制字符串列表也可以如下表示
import textwrap
s = "48656c6c6f20576f726c6421"
res = textwrap.fill(s, width=2)
print(res.split())  #['48', '65', '6c', '6c', '6f', '20', '57', '6f', '72', '6c', '64', '21']

实例

#! /usr/bin/env python
# -*- coding: utf-8 -*-import json
import astclass Converter(object):@staticmethoddef to_ascii(h):list_s = []for i in range(0, len(h), 2):list_s.append(chr(int(h[i:i+2], 16)))return ''.join(list_s)@staticmethoddef to_hex(s):list_h = []for c in s:list_h.append(str(hex(ord(c))[2:]))return ''.join(list_h)if __name__ == "__main__":read_result = []  # 读取的报警集合ip_result = set()log_path = "C:\\Users\\abc\\Desktop\\abc\\abc.txt"result_path = "C:\\Users\\abc\\Desktop\\abc\\abc1.txt"for line in open(log_path):res = ast.literal_eval(line.strip())read_result.append(res)# 汇总 dest_ipfor item in read_result:for line in item:ip_result.add(line["dest_ip"])result = {}for ip in ip_result:result_payload = []for item in read_result:for line in item:if ip == line["dest_ip"]:payload = line["src_ip"] + " : " + line["dns_rcode"] + " : " + line["dns_rrname"]result_payload.append(payload)result[ip] = result_payload# writefile = open(result_path, encoding="utf-8", mode="a+")for item in result:for payload in result[item]:file.write(item + "<=>" + payload)file.write("\n")file.close()

Python 16进制转ASCII(十六进制转ASCII)相关推荐

  1. 10进制、16进制(十进制、十六进制)与ASCII码流互转

    16进制在python里实际是以16进制字符串保存的,在处理时要注意去掉'0x' 下面给出互转的两个方法,10进制一个方法,16进制一个方法,实际互通 1. ASCII码转10进制 #ascii码转1 ...

  2. python 16进制转10进制, 8进制转10进制, 2进制转10进制的方法

    python 16进制转10 进制, 8进制转10进制, 2进制转10进制 可以使用系统自带的 int 方法 具体如下: value = "0x1388" result = int ...

  3. python十六进制转十进制_使用Python 16进制转10进制

    原博文 2019-05-07 15:22 − """ 16进制转10进制 """ # str="A5 42 D2 00 4A 00 ...

  4. Python 16进制与字符串的转换

    电脑上装了Python2.7和3.3两个版本,平时运行程序包括在Eclipse里面调试都会使用2.7,但是由于某些原因在cmd命令行中输入python得到的解释器则是3.3, 一直没对此做处理,因为这 ...

  5. python 16进制转中文

    项目场景: 我们在用python分析流量时常常会需要对获取到的16进制报文进行中文翻译. 以下是我在学习过程中遇到的问题,记录学习,供参考. 字节: 字节(Byte)是计算机信息技术用于计量存储容量的 ...

  6. python 16进制补零_Python输出16进制不带0x补零,整数转16进制,字符串转16进制

    python输出16进制不带0x补零,整数转16进制,字符串转16进制 在开发中,我们偶尔会遇到需要将数据通过控制台打印出来,以检查数据传输的准确性.例如调试服务端刚接到的二进制数据(里面包含很多非可 ...

  7. 16进制,BCD码,ASCII转换

    十六进制 ASCII码 BCD码 字符名 0x30 048 0b0000 0 0x31 049 0b0001 1 0x32 050 0b0010 2 0x33 051 0b0011 3 0x34 05 ...

  8. 2进制 16进制 计算机术语,十六进制转二进制计算器

    十六进制转二进制计算器 十六进制: 二进制: 进制: 进制: 转换说明:上面第一行可将十六进制转换为二进制,第二行可以将任意进制转换为任意进制. 64个基数为: "[email protec ...

  9. c语言中的16进制坐标计算器,十六进制计算器_16进制计算器

    16进制计算器 开始--所有程序--附件--计算器 电脑计算器16进制转换10进制怎么用 在电脑自带的计算器中启用"程序员"设置,即可进行16进制转换10进制的操作.具体操作请参照 ...

最新文章

  1. js 获取当前时间 随记
  2. 【POJ】2503 Babelfish(字典树,map,指针)
  3. c语言中getc与gets,getc()和gets()的用法
  4. HFS远程命令执行漏洞复现
  5. 写个自己:学C++有感
  6. 深入理解ARM体系架构(S3C6410)---认识S3C6410
  7. 华为透露中国首个开源基金会将于近期正式运营!
  8. Hashmasks将其艺术品与IPFS固定激励一起存储至Arweave中
  9. JavaScript数据结构——队列(Queue)
  10. 如何在硅谷一夜暴富?
  11. Service绑定模式
  12. 深入理解JVM-java内存区域与内存溢出异常
  13. paip.proxool连接池 :Attempt to refer to a unregistered pool by its alias 'xx'
  14. 轻松构建微服务之分布式配置中心
  15. 一些嵌入式面试题目的集锦
  16. java能写dnf辅助么,【Java8新特征】还没搞懂函数式接口?赶忙过来看看吧!_卡盟,dnf脚本...
  17. 基于stm32的无线多点温度采集系统设计
  18. 我们是如何解决偶发性的 502 错误的
  19. 马斯克在推特说特斯拉股价太高导致大跌 会被罚吗
  20. USB虚拟串口(CDC)极限速度测试

热门文章

  1. MySQL回闪查询_MySQL进行BINLOG回闪
  2. “掌上12306”手机购票业务,支持苹果和安卓平台系统
  3. 总结Java开发面试常问的问题,持续更新中~
  4. iOS开发,如何获取手机设备号
  5. Python asyncio模块
  6. 归并排序——求逆序对个数
  7. 《网络安全与渗透测试》课堂笔记---06
  8. ado.net能访问oracle,C# 通过ado.net 访问oracle
  9. android P MediaCodec编解码流程分析
  10. Hadoop大数据平台搭建(一)