国产免费成人在线视频_天天做天天爱天天爽综合网_国产精品男女猛烈高潮激情_久久久精品国产免大香伊

【全球新視野】Python工具箱系列(三十七)

2023-06-26 11:31:44 來(lái)源:博客園

打印 放大 縮小

二進(jìn)制文件操作(上)

python比較擅長(zhǎng)與文本相關(guān)的操作。但現(xiàn)實(shí)世界中,對(duì)于非文本消息的處理也很普遍。例如:


(資料圖片僅供參考)

◆通過(guò)有線、無(wú)線傳遞傳感器獲得的測(cè)量數(shù)據(jù)。

◆衛(wèi)星通過(guò)電磁波發(fā)送測(cè)量數(shù)據(jù)。

◆數(shù)據(jù)中心的數(shù)萬(wàn)臺(tái)服務(wù)器發(fā)送當(dāng)前CPU的占用率信息、內(nèi)存占用量等眾多指標(biāo)數(shù)據(jù)。

以上數(shù)據(jù),當(dāng)然可以以文本方式發(fā)送,但是對(duì)于帶寬的占用驚人。假設(shè)某個(gè)對(duì)于PM2.5進(jìn)行測(cè)量的傳感器,每隔一秒發(fā)送一次測(cè)量數(shù)據(jù),以文本方式發(fā)送消息,內(nèi)容如下:

"counter: 1, pm25: 170.24119426834042, timestamp: 2022-07-24 08:52:11.138894+00:00"

以上消息占用了81個(gè)字節(jié)。而如果能夠按照約定的格式直接發(fā)送二進(jìn)制數(shù)據(jù),則只需要20個(gè)字節(jié),可以大幅提升傳輸效率。此外,以文本方式在本地保存?zhèn)鞲衅鲾?shù)據(jù),則一天就需要81*86400/1024=6834M字節(jié),對(duì)于傳感器這種體積小巧的嵌入式系統(tǒng),存儲(chǔ)空間極為有限,很快就會(huì)空間耗盡。因此,對(duì)非文本數(shù)據(jù)直接保存與讀取非常有必要。下面的代碼演示了傳感器類(lèi),以及傳感器測(cè)量數(shù)據(jù)的二進(jìn)制文件存儲(chǔ)與讀取的基本操作。

import binasciiimport randomimport structfrom datetime import datetimefrom io import BytesIOfrom time import sleepimport arrowclass sensordata_v1():    def __init__(self):        utc = arrow.utcnow()        self._timestamp = utc.to("Asia/Shanghai")    @property    def counter(self) -> int:        """        計(jì)數(shù)器        Returns:            int: 從0開(kāi)始的計(jì)數(shù)器        """        return self._counter    @counter.setter    def counter(self, value: int):        self._counter = value    @property    def pm25(self) -> float:        """        PM25測(cè)量值        Returns:            float: pm25的當(dāng)前測(cè)量值        """        return self._pm25    @pm25.setter    def pm25(self, value: float):        self._pm25 = value    @property    def timestamp(self) -> datetime:        """        當(dāng)前時(shí)點(diǎn)        Returns:            datetime: 當(dāng)前的時(shí)間        """        return self._timestamp.datetime    def __str__(self):        """        以文字輸出相關(guān)內(nèi)容        Returns:            string: 說(shuō)明性文字        """        return f"counter: {self.counter}, pm25: {self.pm25}, timestamp: {self.timestamp}"    def __repr__(self):        """        輸出字節(jié)流的16進(jìn)制內(nèi)容        Returns:            string: 16進(jìn)制顯示相關(guān)數(shù)值        """        return str(binascii.hexlify(self.toBytes()))    def toBytes(self):        """        將相關(guān)數(shù)據(jù)轉(zhuǎn)換成為bytes,便于網(wǎng)絡(luò)傳輸或者寫(xiě)入文件        Returns:            bytes: 整合測(cè)量數(shù)據(jù)到字節(jié)流中        """        with BytesIO() as byio:            byio.write(struct.pack("

其中arrow是非常值得推薦的時(shí)間處理框架。python有內(nèi)置的時(shí)間處理框架,功能非常完善,但失之于亂與雜,掌握起來(lái)非常不易。而arrow則非常人性化,做到了拿來(lái)即用。其安裝過(guò)程非常簡(jiǎn)單,直接pip install arrow即可。在示例程序中,為了能夠方便存儲(chǔ),我們將時(shí)間戳直接用UNIX的timestamp來(lái)表示,轉(zhuǎn)換后為了保持精度,本例使用double(8字節(jié))存儲(chǔ),如果要求不高,可以改為float(4字節(jié))。

sensordata_v1類(lèi)使用@property裝飾器來(lái)定義屬性。總共有3個(gè)屬性:

◆counter-計(jì)數(shù)器。從0開(kāi)始計(jì)數(shù)累加,后續(xù)保存到數(shù)據(jù)庫(kù)中時(shí)也方便檢索。

◆pm25-PM2.5測(cè)量值。在示例代碼中使用random.uniform模擬一個(gè)0到300的隨機(jī)浮點(diǎn)值,沒(méi)有什么太大的意義,保證每次不同即可。

◆timestamp-數(shù)據(jù)采集時(shí)的對(duì)應(yīng)時(shí)間。

str類(lèi)函數(shù)

可以自定義,本例中用它來(lái)直觀的表示當(dāng)前的采集值。當(dāng)對(duì)sensordata_v1類(lèi)的實(shí)例打印時(shí),就會(huì)自動(dòng)調(diào)用這個(gè)函數(shù)。

repr類(lèi)函數(shù)

可以自定義,本例中用它來(lái)演示轉(zhuǎn)換成為字節(jié)流bytes時(shí)的16進(jìn)制值。對(duì)于程序員來(lái)說(shuō),16進(jìn)制來(lái)表示字節(jié)是比較自然的。

toBytes類(lèi)函數(shù)具體展示了如何將類(lèi)的屬性值轉(zhuǎn)換成為二進(jìn)制字節(jié)流,主要依靠python內(nèi)置的struct模塊。在內(nèi)存中模擬文件打開(kāi)一個(gè)BytesIO,并且依次寫(xiě)入struct.pack編碼后的字節(jié)流,最終統(tǒng)一輸出。

fromBytes類(lèi)函數(shù)具體展示了如何從字節(jié)流反解成為對(duì)象的屬性值。struct.pack與struct.unpack成對(duì)出現(xiàn)。

toFile函數(shù)將編碼好的字節(jié)流寫(xiě)入二進(jìn)制文件。寫(xiě)入的模式為"wb",其中w代表全覆蓋寫(xiě)入的意思,b代表二進(jìn)制模式的意思。fromFile負(fù)責(zé)從二進(jìn)制文件讀回保存的字節(jié)流,重新生成各個(gè)sensordata_v1對(duì)象。

生成的二進(jìn)制文件,可以使用UltraEditor、InHex等。也可以直接使用vscode自帶的2進(jìn)制文件瀏覽器擴(kuò)展Hex Editor,顯示效果如下圖所示:

從圖中可以看出,二進(jìn)制文件確實(shí)節(jié)省空間,但人類(lèi)不容易理解,必然借助于專(zhuān)用工具與代碼來(lái)管理。但即使計(jì)算機(jī)與網(wǎng)絡(luò)能力強(qiáng)悍如斯,二進(jìn)制文件與網(wǎng)絡(luò)上的字節(jié)流仍然必不可少,不可替代。

關(guān)鍵詞:

責(zé)任編輯:ERM523

相關(guān)閱讀

国产免费成人在线视频_天天做天天爱天天爽综合网_国产精品男女猛烈高潮激情_久久久精品国产免大香伊
亚洲图片制服诱惑| 最近2019中文字幕mv免费看| 国产精品露脸av在线| 久久精品久久精品| 中文字幕在线视频播放| 国产精品∨欧美精品v日韩精品| 久久综合色综合88| 亚洲高清影院| 日韩精品久久一区| 亚洲国产欧美一区| 国产精品99久久久| 色www亚洲国产阿娇yao| 国产视频在线观看一区| 欧美日韩成人综合在线一区二区| 99热在线精品观看| 人妻av一区二区| 亚洲一区美女视频在线观看免费| 在线亚洲高清视频| 亚洲一区二区三区高清不卡| 变态另类丨国产精品| 岛国视频一区免费观看| 69堂精品视频| 久久精品噜噜噜成人av农村| 天天做夜夜爱爱爱| 神马影院午夜我不卡| 精品中文视频在线| 99在线精品视频| 大奶一区二区三区| 欧洲黄色一级视频| 97av在线视频免费播放| 午夜精品久久久久久久蜜桃app| 欧美国产三区| 大尺度在线观看| 亚洲一区精品电影| 91国偷自产一区二区三区成为亚洲经典| 91精品国产福利在线观看麻豆| 亚洲这里只有精品| 欧美贵妇videos办公室| 国产精品传媒在线| 成人情趣视频网站| 天天色综合天天色| 国产成人久久久| 亚洲成人精品一区| 伊人久久大香线蕉综合热线 | 国产91在线播放精品91| 夜夜精品视频一区二区| 国产探花一区二区| 91成人综合网| 久久国产精品影片| 一区二区视频在线看| 国产视频一视频二| 久久亚洲影视婷婷| 99ri日韩精品视频| 欧美视频免费看欧美视频| 久久精品视频在线观看| 亚洲精品国产成人久久av盗摄| 欧美日韩国产在线观看网站| 天天看片天天操| 91精品视频观看| 欧美一区二区黄| 国产91丝袜在线播放0| 91精品国产乱码久久久竹菊| 日日摸日日碰夜夜爽无码| 久久久久久久影院| 综合电影一区二区三区 | 日本不卡的三区四区五区| 精品免费视频| 亚洲高清视频一区| 中文字幕亚洲欧美日韩2019| 一区在线观看免费| 你懂的国产精品| 在线 丝袜 欧美 日韩 制服| 国产亚洲第一区| 精品福利av导航| 久久久一区二区三区捆绑**| 日韩大片在线观看| 91玉足脚交白嫩脚丫| 日本午夜一区二区三区| 中文字幕亚洲欧美一区二区三区| 综合中文字幕亚洲| 国产精品日韩精品欧美精品| 日韩女优一区二区| 黄www在线观看| 国产精品国产三级在线观看| 777精品视频| 亚洲韩国一区二区三区| 久久婷婷丁香| 日日夜夜精品视频| 男女午夜激情视频| 99精品在线直播| 在线观看不卡av| 天天干天天色天天干| 91av成人在线| 欧美日韩免费高清一区色橹橹 | 亚洲黄色a v| 国产精品高清一区二区三区| 一区二区成人av| 最近2019中文字幕在线高清 | 精品国产一区探花在线观看| 日韩精品视频一区二区| 神马影院我不卡| 日韩av免费一区| 精品久久久久一区| 亚洲天堂2016| 美女任你摸久久| 九九久久成人| 天天干天天操天天拍| 午夜精品久久久久久久无码| 国产精品区一区二区三在线播放| 久久精品国产一区二区三区| 欧美日韩视频在线第一区| 国产精品夜夜嗨| 亚洲传媒在线| 最近中文字幕无免费| 欧美日韩一道本| 久久久久久亚洲精品| 日韩一级高清毛片| 亚洲黄色片在线观看| 麻豆精品视频在线观看免费| 成人免费看片39| 伊人久久久久久久久久久久久久| 免费看污黄网站| 视频一区三区| 91精品视频一区| 久久影视电视剧免费网站清宫辞电视 | 99热这里只有精品在线播放| 亚洲高清在线播放| 国产裸体写真av一区二区| 日日噜噜噜夜夜爽亚洲精品 | 日韩三级成人av网| 色综合久久中文综合久久牛| 欧美国产一区二区| 久久电影国产免费久久电影| 小处雏高清一区二区三区| 国产精品日韩精品在线播放 | 欧美日韩不卡合集视频| 亚洲精品在线观| 欧美日韩亚洲系列| 国产女人18毛片水真多成人如厕| 蜜桃视频第一区免费观看| 天天色综合色| 国产精品xxx在线观看| 极品尤物一区二区| 俄罗斯女人裸体性做爰| 免费高清在线观看免费| 一区二区av| 国产日韩欧美亚洲一区| 国产精品中文久久久久久久| 亚洲青青一区| 成人免费毛片糖心| 欧美在线a视频| 日韩欧美视频网站| 宅男av一区二区三区| 好看的日韩精品| 国产精品免费小视频| 欧美人交a欧美精品| 亚洲一区二区久久| 精品久久久三级丝袜| 欧美丝袜自拍制服另类| 亚洲成人av在线电影| 国产精品久久毛片av大全日韩| 精品一区二区三区免费播放| 亚洲欧洲视频| 欧美激情成人| 国产一区毛片| 日韩欧美ww| 91精品尤物| 999精品视频在线观看| 成人做爰69片免网站| 精品少妇人妻一区二区黑料社区| 欧美大片国产精品| 91美女福利视频| 成人免费观看视频| 国产一区二区三区四| 日韩二区三区在线观看| 欧美亚洲视频| 亚洲理论在线| 亚洲激情二区| 亚洲午夜精品久久久久久app| 欧美xxxx中国| 欧美电影免费播放| 日韩免费高清| 国产欧美一区二区三区精品观看| 美日韩黄色大片| 国产66精品| 国产性xxxx| 亚洲网站免费| 精品国产18久久久久久二百| 99视频这里有精品| 午夜不卡一区| 一区二区三区欧洲区| 亚洲高清999| 任你弄精品视频免费观看| 日本妇女一区| 精品国产91| 97久久夜色精品国产| 99久久99热这里只有精品| 91一区在线| 黄色在线一区| 麻豆成人精品| 极品少妇xxxx精品少妇偷拍| 国产精品一区二区久久不卡 | 91欧美视频网站| 97视频资源在线观看| 精品国产日本| 日韩精品久久久免费观看| 天天综合色天天综合色hd| 综合视频免费看| 福利视频一区二区三区四区| 免费看的黄色大片| 中文字幕在线观看日| a级片在线观看视频| 国产aⅴ激情无码久久久无码| 欧美a级片免费看| 日韩中文字幕视频网| 亚洲免费成人av在线| 国产电影一区二区在线观看| 亚洲日本欧美| 丝瓜av网站精品一区二区| 国产成人日日夜夜| 91亚洲国产成人精品一区二三| 国产精品激情偷乱一区二区∴| 亚洲精品精品亚洲| 欧美在线制服丝袜| 精品国产a毛片| 日韩在线观看网站| 欧美自拍大量在线观看| 91精品视频免费| 欧美成人精品激情在线观看 | 欧美精品激情视频| 国产精品第8页| 国产精品一区二区三区在线观| 日韩精品久久久| 欧美aⅴ在线观看| 樱花草www在线| 人妻熟人中文字幕一区二区| 538任你躁精品视频网免费| 欧美亚洲精品在线| 性8sex亚洲区入口| 成人精品在线视频观看| 亚洲美女偷拍久久| 欧美日韩成人高清| 在线视频中文亚洲| 日韩av手机在线观看| 久久国产一区| 欧美日韩一道本| 国产麻豆剧传媒精品国产av| 91精品一久久香蕉国产线看观看| 国产一区二区三区不卡视频网站| 欧美日韩亚洲一区三区| 久久国产福利国产秒拍| 最新国产成人在线观看| 欧美日韩国产精品自在自线| 一本色道久久88综合亚洲精品ⅰ| 青草成人免费视频| 日本黄网免费一区二区精品| 久久黄色免费看| 夜夜春很很躁夜夜躁| 欧美午夜寂寞| 麻豆久久婷婷| 国产日产精品1区| 欧洲精品一区二区| 色999日韩欧美国产| 91精品久久久久久久久久另类 | 激情亚洲成人| 成人一区二区视频| 欧美日韩国内自拍| 国产亚洲人成网站在线观看| 国产精品网站大全| 国产精品无码乱伦| 国产a√精品区二区三区四区| 99er精品视频| 亚洲美女色禁图| 国产目拍亚洲精品99久久精品| 欧美日韩精品一区视频| 久久久久久久久久久人体| 国产综合色一区二区三区| 国产xxxxx在线观看| 亚洲区一区二区三| 亚洲九九视频| 91亚洲国产成人精品一区二三| 欧美网站一区二区| 久久成人国产精品| 欧美日韩一区二区三| 91视频福利网| 欧美图片一区二区| 中文字幕免费高清视频| 国产精品久av福利在线观看| 99精品国产99久久久久久福利| 久久久久久亚洲综合影院红桃| 在线视频综合导航| 欧美老妇交乱视频| 日本不卡二区高清三区| 国内av一区二区| 香蕉久久一区| 秋霞午夜鲁丝一区二区老狼| 亚洲激情图片小说视频| 中文字幕精品网| 久久草.com| 在线播放av网址| 成人综合一区| 久久综合久久综合久久综合| 日韩欧美国产三级电影视频| 国产精品主播视频| aa在线免费观看| 日韩精品视频一区二区三区| 日产国产欧美视频一区精品| 欧美日韩在线免费| 欧美大奶子在线| 欧洲亚洲一区二区三区四区五区| 亚洲黄色在线网站| 天天综合国产| 日本一区二区三区在线观看| 亚洲美女又黄又爽在线观看| 国产丝袜不卡| yy6080午夜| 午夜性色一区二区三区免费视频| 国产精品免费久久久久| 中文字幕亚洲一区在线观看| 日本免费高清一区二区| 国产熟妇久久777777| 亚洲国内欧美| 精品欧美一区二区三区| 91精品国产91久久久久| 日本韩国欧美在线观看| 精品国产视频一区二区三区| 精品在线观看视频| 欧美电影一区二区三区| 成人激情在线观看| 中文 日韩 欧美| 久久久久亚洲| 一区二区三区在线免费| 欧美激情国内偷拍| 国产玉足脚交久久欧美| 久久精品九色| 成人小视频免费在线观看| 亚洲精品福利在线观看| 日本不卡二区高清三区| 欧美激情视频二区| 日韩成人av影视| 国产成人欧美日韩在线电影| 麻豆精品久久| 另类欧美日韩国产在线| 葵司免费一区二区三区四区五区| 亚洲人体偷拍| 色综合久久久久综合| 欧美专区日韩视频| 在线免费看污网站| 亚洲综合自拍| 亚洲成人综合网站| 2021久久精品国产99国产精品| 日本美女高潮视频| 欧美jizz| 亚洲大片一区二区三区| 青青久久aⅴ北条麻妃| 亚洲免费av一区| 亚洲有吗中文字幕| 色婷婷综合久久久久中文| 国产精品久久久久久婷婷天堂 | 青青草国产免费| 日韩超碰人人爽人人做人人添| 中文字幕免费不卡| 久久91亚洲精品中文字幕奶水| 亚洲国产精品毛片av不卡在线| 欧美大片aaaa| 波多野结衣一本| 激情综合激情| 欧美三级三级三级爽爽爽| 成人欧美一区二区| 国产精品久久久久无码av色戒| 另类小说一区二区三区| 亚洲国产精品久久精品怡红院 | 亚洲精品少妇| 色嗨嗨av一区二区三区| 91精品综合久久久久久五月天| xxxwww国产| 久热成人在线视频| 亚洲欧美色图片| 国产美女主播在线播放 | 成人免费观看男女羞羞视频| 中文字幕在线成人| 无码内射中文字幕岛国片| 激情综合网址| 91精品国产综合久久蜜臀| 在线视频精品一区| 国产成人高清| 欧美色欧美亚洲高清在线视频| 国产精品毛片一区视频| 亚洲一区二区av| 欧美激情一区二区三区| 国产精品白嫩美女在线观看| 一区二区三区|亚洲午夜| 国产精品va在线观看无码| 四虎影视精品| 狠狠色噜噜狠狠狠狠97| 国产精品国产精品| 国产一区二区视频在线看| 国产精品久久久久久久蜜臀| 国产精品福利在线观看| a级片在线观看|