1. 程式人生 > >python打包傳送十六進位制字元

python打包傳送十六進位制字元

最近在做加密機監控,一般加密機只接受十六位進位制字元。後來在同網找到傳送方法程式碼如下:

import struct
import socket
a=[0x00,0x02,0x4e,0x50]
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(('127.0.0.1',8000))
data=struct.pack("%dB"%(len(a)),*a)
s.send(data)
reply=s.recv(1024)
print reply


相關推薦

python打包傳送字元

最近在做加密機監控,一般加密機只接受十六位進位制字元。後來在同網找到傳送方法程式碼如下: import struct import socket a=[0x00,0x02,0x4e,0x50] s=socket.socket(socket.AF_INET,socket.SO

使用python在openwrt下操作串列埠傳送資料

#!/usr/bin/python import serial from time import sleep ser = serial.Serial('/dev/ttyS0', 9600, timeout=0.5) print ser.port print ser.baudrate if

python 入門之 – 運算(二

二進位制是由 0 ~ 1 組成的 八進位制是由 0 ~ 7組成的 十進位制是由 0 ~ 9組成的 十六進位制是由 0 ~ 15 組成的,可是 9 後面的的 10 是用字母來代替 A~ F ,也就是 0 ~ F,用字母代替了數字,避免不再重複 之前剛接觸 python 的時候學了以下 二進

Python中的

Python十六進位制數 轉換關係 hex() 函式 int() 函式 運算 轉換關係 十進位制整數轉十六進位制整數用hex();十六進位制整數轉十進位制整數用int() 類似地,十進位制整數轉二進

socket 傳送的字串(字串與其他型別的轉換)(轉)

socket 傳送十六進位制的字串 專案用到 socket tcp/ip 傳送/接受 十六進位制的字串,因為C# socket 傳送接受的都是byte[] (位元組陣列),現在記錄tyte[] 與各資料型別之間的轉換 注: C#的位元組陣列 byte[] 存放的時間是0-255的整型資料 byte 關鍵字

Qt中使用串列埠傳送指令

使用Qt的serial.write()傳送十六進位制指令 比如需要傳送01 02 fa 32 使用write()函式傳送位元組陣列QByteArray QByteArray array; array[0] = 0x01; array[1] = 0x02;

C語言--陣列轉換為字串、字元陣列串列埠傳送

 首先,我們會遇到這麼多種的“十六進位制的表達字串”: char *str1 = "FF FF 12 FE EE 00 2F 09 3D 22 00 FF"; char *str2 = "FFFF12FEEE002F093D2200FF"; char *

Python字串轉互轉

def str_to_hex(s): return ' '.join([hex(ord(c)).replace('0x', '') for c in s]) def hex_to_str(s)

字元轉對應的

#include <stdio.h> #include <string.h> /* C 庫函式 int feof(FILE *stream) 測試給定流 stream 的檔案結束識別符號。 */ int main( void ) { unsigned c

ASCII碼值轉化,十進位制數;字元值轉十進位制,ASCII碼值

用字元表示的十六進位制值轉化為十進位制,ASCII碼: bool ok; QStringList list; //初始化list的內容為:list = ("30", "31", "32", "33"

C# 輸入字元字元

private string StringToHexString(string s, Encoding encode) { byte[] b = encode.GetBytes(s);//按照指定編碼將string程式設計位元組陣列

習題7-8 字串轉換成十進位制整數 (字元

輸入一個以#結束的字串,本題要求濾去所有的非十六進位制字元(不分大小寫),組成一個新的表示十六進位制數字的字串,然後將其轉換為十進位制數後輸出。如果在第一個十六進位制字元之前存在字元“-”,則代表該數是負數。 輸入格式: 輸入在一行中給出一個以#結束的非空字串。 輸出格式: 在一行中

android 藍芽模組Bluetooth 使用 資料傳送

一個藍芽模組看起來很小,弄起來還是有點複雜的,從網上找了一個示例程式碼,http://blog.csdn.net/vnanyesheshou/article/details/51554852但是不能直接用,需要自己進行閱讀理解和修改後才能使用。 先貼一張自制的uml圖: 從圖中不難看出

Python: 二進位制、八轉換或者輸出

為了將整數轉換為二進位制、八進位制或十六進位制的文字串,可以分別使用bin() ,oct() 或hex() 函式: >>> x = 1234 >>> bin(x) '0b10011010010' >>> oct(x) '0o2322' >&g

Python程式設計:二進位制,八與十進位制之間的轉換

進位制轉換的函式 bin() 10進位制轉2進位制 oct() 10進位制轉8進位制 hex()10進位制轉16進位制 int() *進位制轉10進位制 各進位制之間轉換 ↓ 2進位制 8進位制

python : 二進位制、八,十進位制和的相互轉換

二進位制、八進位制和十六進位制轉化為十進位制:  二進位制轉化為十進位制:print(int("111",2))    輸出為7  八進位制轉化為十進位制:print(int("11",8))    輸出為9 十六進位制轉化為十

python中將轉化為二進位制、python中變更button的text和bg

    def SpeedTobyte(self):         #print(self.Eabs.get())         byte = float(self.Eabs.get())/0.0

樹莓派ASCII指令串列埠通訊(傳送

對於指令文字 ENQ STX 08 PS 0500 F0 ETX的ASCII傳送 首先按照我上一篇部落格開啟串列埠 >>ser.write("\x05\x02\x30\x38\x50\x53\x20\x20\x30\x35\x30\x30\x46\x30\x0

python 二進位制,八與十進位制的轉化

def test(num): base_2=bin(num)#轉化為二進位制 base_8=oct(num)#轉化為八進位制 base_16=hex(num)#轉化為十六進位制 return base_2,base_8,base_16 #二進

串列埠傳送字串和原始碼

 /**   * @brief  USART GPIO 配置,工作引數配置   * @param  無   * @retval 無   */ void USART_Config(void) {     GPIO_InitTypeDef GPIO_InitStructure;