日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python binascii array('c')_详解Python中的array数组模块相关使用

發布時間:2023/12/3 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python binascii array('c')_详解Python中的array数组模块相关使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

初始化array實例化可以提供一個參數來描述允許那種數據類型,還可以有一個初始的數據序列存儲在數組中。

import array

import binascii

s = 'This is the array.'

a = array.array('c', s)

print 'As string:', s

print 'As array :', a

print 'As hex :', binascii.hexlify(a)

數組配置為包含一個字節序列,用一個簡單的字符串初始化。

>>> ================================ RESTART ================================

>>>

As string: This is the array.

As array : array('c', 'This is the array.')

As hex : 54686973206973207468652061727261792e

處理數組類似于其他python序列,可以采用同樣方式擴展和處理array。

import array

import pprint

a = array.array('i', xrange(3))

print 'Initial :', a

a.extend(xrange(3))

print 'Extended:', a

print 'slice: :', a[2:5]

print 'Itetator:'

print list(enumerate(a))

支持的操作包括分片,迭代以及向末尾增加元素。

>>> ================================ RESTART ================================

>>>

Initial : array('i', [0, 1, 2])

Extended: array('i', [0, 1, 2, 0, 1, 2])

slice: : array('i', [2, 0, 1])

Itetator:

[(0, 0), (1, 1), (2, 2), (3, 0), (4, 1), (5, 2)]

數組和文件可以使用高效讀/寫文件的專用內置方法將數組的內容寫入文件或從文件讀取數組。

import array

import binascii

import tempfile

a = array.array('i', xrange(5))

print 'A1: ',a

output = tempfile.NamedTemporaryFile()

a.tofile(output.file)

output.flush

with open(output.name, 'rb') as input:

raw_input = input.read()

print 'Raw Contents:', binascii.hexlify(raw_data)

input.seek(0)

a2 = array.array('i')

a2.fromfile(input, len(a))

print 'A2: ', a2

候選字節順序如果數組中的數據沒有采用固有的字節順序,或者在發送到一個采用不同字節順序的系統前需要交換順序,可以在python轉換整個數組而無須迭代處理每個元素。

import array

import binascii

def to_hex(a):

chars_per_item = a.itemsize * 2

hex_version = binascii.hexlify(a)

num_chunks = len(hex_version) / chars_per_item

for i in xrange(num_chunks):

start = i * chars_per_item

end = start + chars_per_item

yield hex_version[start:end]

a1 = array.array('i', xrange(5))

a2 = array.array('i', xrange(5))

a2.byteswap()

fmt = '%10s %10s %10s %10s'

print fmt % ('A1_hex', 'A1', 'A2_hex', 'A2')

print fmt % (('-' * 10,) * 4)

for value in zip(to_hex(a1), a1, to_hex(a2), a2):

print fmt % value

byteswap()會交換C數組中元素的字節順序,比在python中循環處理數據高效的多。

>>> ================================ RESTART ================================

>>>

A1_hex A1 A2_hex A2

---------- ---------- ---------- ----------

00000000 0 00000000 0

01000000 1 00000001 16777216

02000000 2 00000002 33554432

03000000 3 00000003 50331648

04000000 4 00000004 67108864

總結

以上是生活随笔為你收集整理的python binascii array('c')_详解Python中的array数组模块相关使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕一区电影 | 911av| 亚洲自啪 | 国产女主播喷水高潮网红在线 | 久久成人激情 | 久久精品国产99久久 | 国产一区二区三区四区三区四 | aⅴ在线免费观看 | 国产高潮失禁喷水爽到抽搐 | 亚洲一区二区三区影院 | 抱着老师的嫩臀猛然挺进视频 | 超碰不卡| 色妞av| 国产一区毛片 | 久久入| 熟女毛片 | 天天操天天摸天天干 | 久久亚洲精品石原莉奈 | 成人手机视频 | 日本美女动态 | 欧美成人国产精品高潮 | 欧美系列一区二区 | 国产成人免费 | 天天曰 | 女人的av | 国产成人无码AA精品区 | 电车痴汉在线观看 | 国产最新视频 | 玩偶姐姐在线看 | 久久人人妻人人人人妻性色av | 一级黄色片免费 | 亚洲天堂网视频 | 看片在线 | 国产精品视频久久久久久久 | 性视频网址 | 人妻一区二区三区免费 | 成人吃奶视频 | 狠狠cao日日穞夜夜穞av | 欧美一二 | 国产成人短视频 | 一本色道久久综合狠狠躁 | 福利视频在线看 | 久国久产久精永久网页 | 成人18在线 | 国产精品xxxxxx| 看全色黄大色黄大片大学生 | 美女性生活视频 | 亚洲色图第三页 | 超碰pron | 午夜在线免费观看视频 | 国产成人aa| jizz久久| 欧美日日骚 | 欧美一区亚洲一区 | 中文写幕一区二区三区免费观成熟 | 亚洲精品无码永久在线观看 | 国产亚洲av在线 | 爱的天堂 | 亚洲欧洲无码一区二区三区 | 亚洲干 | 中文字幕一区二区三 | juliaann精品艳妇hd | 最新国产毛片 | 黄色www视频 | 国产一级淫 | 三级免费黄录像 | 欧美xxxxx视频 | 一本一道波多野结衣av黑人 | 鲁丝一区二区三区 | 久久黄网站 | 亚洲国产精品99久久久久久久久 | 91高清在线视频 | 日韩经典午夜福利发布 | 久久成年视频 | 成人在线免费观看网站 | 国产777 | 精品无人区无码乱码毛片国产 | 天天干天天干天天 | 男人操女人免费 | 成人在线免费播放视频 | 狠狠干2018| 五月婷婷丁香网 | 国产超91| 自拍偷拍视频在线 | 亲切的金子片段 | 成人在线超碰 | 国产成人精品999在线观看 | 久久久久亚洲AV成人无码国产 | 色老头一区二区三区 | 欧美国产日本 | 国产又爽又黄免费软件 | 五月天色丁香 | 亚洲一区免费看 | 黄色网址最新 | 丰满的女邻居 | 黑人玩弄人妻一区二 | 亚洲在线看片 | 玩弄少妇人妻 | 国产网址在线 |