pip的安装以及binascii报错问题
pip的安装与binascii.crc32报错
问题起源
今天再看hbctf第一场的题解,发现一道编写python脚本爆破crc32的题目。于是尝试了一下,但是程序报错
import binascii
real = 0x9c4d9a5d
for y in range(100000, 999999):
if real == (binascii.crc32(str(y)) & 0xffffffff):
print(y)
误以为是binascii模块没有安装,智障地去安装了pip,最后又重新找了问题的解决方法
pip的安装 for windows
首先要配置要python的系统变量的PATH值。然后去pip下载下载pip,解压(tar -xf **),然后打开cmd,这里的cmd要用管理员方式打开,否则安装的时候会报错,提示权限不够。
ps:important在这里的时候最好把x:/program(x86)/pyhon这个文件夹让当前账号获取全部权限,否则pip安装模组的时候还会报错。右键文件属性,安全,找当前账号,编辑,完全控制。
然后在cmd中进入解压之后的pip文件夹,在cmd输入python setup.py install ,然后pip就安装成功了
crc32报错的真正原因
在新版本的python3中,取消了unicode类型,代替它的是使用unicode字符的字符串类型(str),字符串类型(str)成为基础类型如下所示,而编码后的变为了字节类型(bytes)但是两个函数的使用方法不变:
decode encode
bytes ------> str(unicode)------>bytesu = '中文' #指定字符串类型对象u
str = u.encode('gb2312') #以gb2312编码对u进行编码,获得bytes类型对象str
u1 = str.decode('gb2312')#以gb2312编码对字符串str进行解码,获得字符串类型对象u1
u2 = str.decode('utf-8')#如果以utf-8的编码对str进行解码得到的结果,将无法还原原来的字符串内容
原文来源
所以加一个encode()
就可以了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构