事情的起因是之前同学叫我帮他用Python修改一个压缩包的二进制内容用来做fuzz,根据他的要求,把压缩包test.rar以十六进制的方式打开,每次修改其中一个十六进制字符串并保存为一个新的rar用来fuzz,于是我本来的打算是用传统的 open()函数来实现 file = open('test.rar','rb') data = file.read() 通过open函数以二进制的方式打开,因为在Python中对二进制流的处理十分简单粗暴,默认的是以字节串bytes来表示的,形式则是以十六进制,…
Python 中的字节与字节数组 - Python - 伯乐在线 http://python.jobbole.com/84839/…
python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:51)    转载▼    标签:    it    python    pool        分类: Python    摘自:http://hi.baidu.com/xjtukanif/blog/item/faaa06d31df7d1d8572c84fe.html     python自2.6开…
在C语言中,我们使用printf("%s","hello")这种形式进行字符串的拼接 在python中,进行这样的拼接有两种实现方式,分别是%号拼接以及使用format函数,以下进行代码演示 %号拼接字符串 在python中是用%号可以进行字符串的拼接,这个跟print函数是无关的.以下进行举例 打印字符串 msg = "i am %s,my blogs is %s" % ("CodeScrew","www.cnbl…
<Python中使用百分号占位符的字符串格式化方法中%s和%r的输出内容有何不同?>老猿介绍了二者的区别,为了快速理解,老猿在此使用另外一种方式补充说明一下: 1.使用%r是调用object类内置方法__repr__方法输出,输出信息Python建议应该是类似debug跟踪的变量信息: 2.使用%s是调用object类内置方法__str__方法输出,输出信息Python建议应该是方便用户理解易懂的友好信息. 具体还可以参考<通俗易懂方式解说Python中repr(变量)和str(变量)函…
Python中使用百分号占位符的字符串格式化方法中%s和%r表示需要显示的数据对应变量x会以str(x)还是repr(x)输出内容展示. 关于str和repr的关系请见: <Python中repr(变量)和str(变量)的返回值有什么区别和联系> 老猿Python,跟老猿学Python!…
1 字符编码简介 ASCII码:美国人发明并使用,用1个字节(8位二进制)代表一个字符,ASCII码是其他任意编码表的子集(utf-16除外). Unicode:包含和兼容全世界的语言,与全世界的语言都有映射关系,常用2个字节表示一个字符,1个生僻字用4个字节表示. utf-8:可变长编码,英文用1个字节表示,汉字通常是3个字节,生僻字常用4-6个字节表示,uft-8比Unicode编码节省空间和I/O开销. 关于Unicode和utf-x格式之间的关系,可以认为utf-x是Unicode的一种…
Python中应该使用%还是format来格式化字符串?   %还是format Python中格式化字符串目前有两种阵营:%和format,我们应该选择哪种呢? 自从Python2.6引入了format这个格式化字符串的方法之后,我认为%还是format这根本就不算个问题.不信你往下看. # 定义一个坐标值 c = (250, 250) # 使用%来格式化 s1 = "敌人坐标:%s" % c 上面的代码很明显会抛出一个如下的TypeError: TypeError: not all…
Python中的列表元组和字符串之间的相互转化需要利用,tuple(),list(),str(). 示例如下: >>> the_string = "hello I'am xiaoli!" >>> #字符串转化为元组 >>> the_tuple = tuple(the_string) >>> the_tuple ('h', 'e', 'l', 'l', 'o', ' ', 'I', "'", 'a…
总的来说,bytes和string的关系是: \(bytes\xrightarrow{decode}string\) \(bytes\xleftarrow{encode}string\) 常见的几种编码及格式 utf8:形如\xe4\xbb\x8a\xe5\xa4 unicode:形如\u4eca\u5929\u5929\u6c14\u4e0d\u9519 注意:如果\变成了\\说明,原字符串是编码后的格式,变成\\是因为转换成了bytes 下面是几种常见的功能 string转bytes s =…