当前位置: 首页 > wzjs >正文

政协网站 是政协信息化建设帮你省网站怎么做

政协网站 是政协信息化建设,帮你省网站怎么做,学校网站开发工程师,一起做网店的类似网站在没有第三方库的情况下使用 Python 自带函数解码二进制字符串 在数据处理和文件编码的领域,二进制字符串的解码是一项常见任务。虽然在 Python 中,有许多强大的第三方库可以帮助我们完成这一任务,但近期博主遇到了一些场景,无法调用这些库,…

在没有第三方库的情况下使用 Python 自带函数解码二进制字符串

在数据处理和文件编码的领域,二进制字符串的解码是一项常见任务。虽然在 Python 中,有许多强大的第三方库可以帮助我们完成这一任务,但近期博主遇到了一些场景,无法调用这些库,为了下次再遇到方便,也为了减少依赖,我们希望仅使用 Python 的内置功能来实现二进制字符串到 ASCII 码的转换。

实现原理

二进制字符串是由 01 组成的,通常每 8 位二进制数(一个字节)可以对应一个 ASCII 字符。我们可以利用 Python 的内置函数和基本的字符串操作来完成这一转换。以下是实现步骤:

简单的实现代码:

binary_string = "01110111011101110111011100101110011010000110010101101100011011000110111101101100011010100110110100101110011000110110111101101101"
ascii_string = ''.join(chr(int(binary_string[i:i+8], 2)) for i in range(0, len(binary_string), 8))
print(ascii_string)

长期调用

  1. 截取有效的二进制字符串:确保输入的二进制字符串长度为 8 的倍数,以便能够完整地转换成字节。
  2. 切分二进制字符串:每 8 位一组,形成一个字节。
  3. 转换为 ASCII 字符:将每个字节的二进制形式转换为整数,再转换为对应的 ASCII 字符。
  4. 处理异常情况:如果输入的字符串中包含非二进制字符,使用正则表达式进行清理。
import redef binary(binary_string):"""此函数用于二进制文件转ascii码:param binary_string:用于接收用户的二进制字符串:return:None"""decoded_string = ""try:#binary_string = binary_string[:len(binary_string) // 8 * 8]binary_chunks = [binary_string[i:i+8] for i in range(0, len(binary_string), 8)]ascii_characters = [chr(int(chunk, 2)) for chunk in binary_chunks]decoded_string = "".join(ascii_characters)except Exception as a:binary_string = re.sub(r'[^01]', '', binary_string)binary_chunks = [binary_string[i:i+8] for i in range(0, len(binary_string), 8)]ascii_characters = [chr(int(chunk, 2)) for chunk in binary_chunks]decoded_string = "".join(ascii_characters)print("警告:输入的文本文件带有非二进制字符,已置换为空")finally:print(f"解码后的字符串:{decoded_string}")

十六进制同理

hex_chunks = [hex_string[i:i+2] for i in range(0,len(hex_string), 2)]
ascii_characters = [chr(int(i ,16)) for i in hex_chunks]
decoded_string = ''.join(ascii_characters)
print(decoded_string)

测试

hexstr("7777772e68656c6c6f6c6a6d2e636f6d")
binary("01110111011101110111011100101110011010000110010101101100011011000110111101101100011010100110110100101110011000110110111101101101")
得到结果:
www.helloljm.com
解码后的字符串:www.helloljm.com

http://www.dtcms.com/wzjs/588550.html

相关文章:

  • 做百度移动端网站新闻软文推广案例
  • 做电影网站失败了网络推广方案下拉管家微xiala11
  • 南通住房和城乡建设部网站公司网站怎么建
  • 开互联网公司网站是自己建吗常州想做个企业的网站找谁做
  • dede cms 网站模板女生喜欢的100种迷你小手工
  • 网页游戏网站哪个最好河北建投商务网
  • 电子商务网站建设答案wordpress wp super cache 七牛
  • 网站开发90天wordpress企业显示不了
  • 上海市网站信息无障碍建设自学搭建网站
  • 甘肃省建设局网站首页wordpress目录结构分析
  • 做网站需求报告今天新闻联播
  • 做h网站怎么才能安全wordpress破解版
  • 专业的网站建设专业平台网站的背景图怎么做
  • 公司网站建设推广方案模板品牌推广方案范文
  • 网站后台怎么控制适合女生的计算机专业有哪些
  • 章贡区建设局网站软件平台是什么意思
  • 陕西的网站建设公司哪家好免费进入正能量的网站
  • 开学第一课汉字做网站蝶山网站建设
  • 周口河南网站建设免费logo在线制作字体
  • 金融电子商务网站建设jsp网站开发难吗
  • 自己做网站建设学动漫制作很烧钱吗
  • html5网站欣赏做网站的需要哪些职位
  • 网站负责人核验照片官方网站建设需求规格说明书
  • 在线做3d交互的网站发稿人是什么意思
  • 上海装饰公司网站建设钢材做那个网站好
  • 网站播放视频速度优化江苏雷威建设工程有限公司网站
  • 青岛做网站建设多少钱微信平台做微文网站链接
  • 淘客如何做网站推广建设第二个北京在哪里
  • 北京南站是丰台站吗赤峰建网站
  • 商城网站作品专业营销软件网站建设