我们所看到的“明文字符串”,都是经过编码(比如ASCII、Uncoded、UTF-8、GB-2312等)后呈现在我们面前的。

文本中“3082”想要“所见到所得”到内存中处理,必须decode('hex')一下(把字符串处理成内存中表面“相同”的二进制),表示成“\x30\x82"(类似编译器的东西将"\x"格式的"字符串"转化成数值,在我们看来这个就是内存中的数值,将其赋值给一个变量可以用下标索引(可以用ord函数转为值),或者切片);否则其在内存中存储的是"\x33\x30\x38\x32"。(即decode()函数2个变一个,处理的数据必须是偶数)

sublime默认会个可视字符串文件加一个回车字符,Win下是"\r\n"--"\x0d\x0a",linux下是"\n"--"\x0a"

相反:

“\x30\x82"在内存中,打印不出来可见串(可以写文件验证),所以要以可见串的形式打印,这时候用encode('hex')--将内存中的二进制以“表面相同”的字符串打印,呈现给我们,

"\x30\x82" encode('hex')-> "3082" encode('hex')-> "33303832"

==============================================================

字符串转换一个大数,用int("",16)。 数值没有encode和decode方法,只有“字符串”有

数值要读写文件或者打印,必须转化成字符串:str(n)

内存数据转大数:

'\x10\x12\x13\x14...'转成大数,先encode(‘hex’),再int(,16)。如:

sig = int(cert[-0x80:].encode('hex'),16)

python 字符转换的更多相关文章

  1. Python字符转换

    Python提供了ord和chr两个内置的函数,用于字符与ASCII码之间的转换. 如:>>> print ord('a') 97 >>> print chr(97 ...

  2. python 字符转换记录

    1.unicode转utf-8格式: a="unicode格式的字符" a=a.encode("utf-8") 2.utf-8转unicode格式: s2 = ...

  3. Python——字符转换(int , bool ,str)

    while True: pass while 1: pass #效果相同,后者 效果更快 s = 1 y = bool (s) #结果为True,int只要不是0,就为真 s = 'abc' y = ...

  4. python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理

    python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...

  5. python 字符和数值转换

    # python 字符和数值转换 ### 字符转数值------------------------------ ord('A') ==> 65- ord('B') ==> 66- ord ...

  6. python成长之路【第五篇】:python字符编码

    在2.7环境中我们要写上这一行#-*- coding:utf-8 -*- 为什么我们要加这一行呢?这一样的意思是置顶编码类型为utf-8编码! 首先在看这个问题之前,咱们是否曾想过一个问题? 为什么我 ...

  7. 深入理解Python字符编码--转

    http://blog.51cto.com/9478652/2057896 不论你是有着多年经验的 Python 老司机还是刚入门 Python 不久,你一定遇到过UnicodeEncodeError ...

  8. 深入理解Python字符编码

    不论你是有着多年经验的 Python 老司机还是刚入门 Python 不久,你一定遇到过UnicodeEncodeError.UnicodeDecodeError 错误,每当遇到错误我们就拿着 enc ...

  9. python字符编码和文件处理

    一.了解字符编码的知识储备 1.文本编辑器存取文件的原理(nodepad++,python,word) 打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放于内存中的,断 ...

随机推荐

  1. A* 寻路算法学习

    代码小记 #include <iostream> #include <list> struct POINT { int X; int Y; }; // G: 起点到当前点的成本 ...

  2. Struts2中实现文件上传的功能

    1.首先得配置一下Struts得配置文件struts-xml: <?xml version="1.0" encoding="UTF-8" ?> &l ...

  3. python2与python3

    一.print python2 print  "hello world !" python3 print("hello world!") 二.字符编码 pyth ...

  4. Windows Azure Storage

    之前都是在博客园看别人的文章,今天开始就开启自己的博客咯,欢迎阅读,共同探讨! 简单点说Widows Azure Storage就是一个大的网盘,可以让用户存储任何想存储的数据,数据一旦存储到“云”中 ...

  5. python 如何读取大文件

    一般的读取文件的方法: with open(file_path, "r") as f: print f.read() 或者 with open(file_path,"r& ...

  6. 安装linux工作环境

    1,介绍Vagrant 我们做web开发的时候经常要安装各种本地测试环境,比如apache,php,mysql,redis等等.出于个人使用习惯,可能我们还是比较习惯用windows.虽然说在wind ...

  7. .net中读取xml文件中节点的所有属性信息

    功能描述: 将数据以xml的格式记录成配置文件,需要获取配置文件中的数据时,则获取对应的配置文件,读取配置文件里对应节点的所有属性. 逻辑实现: 1.将数据配置好在xml文件中. 2.获取xml文件中 ...

  8. hdu1012

    #include<iostream>#include<stdio.h> using namespace std; int jiechen(int n){    int i;   ...

  9. discuz网站数据库迁移

    你的discuz网站数据库迁移,或者修改过改密码后,还要以下相关配置文件修改,才能不会出现1045错误 以windows系统为例:首先登陆远程桌面,在运行中输入cmd,单开命令模式,再输入  net ...

  10. Mac下svn的使用

    1.从本地导入代码到服务器(第一次初始化导入) 在终端中输入 svn import /Users/apple/Documents/eclipse_workspace/weibo svn://local ...