0

Python で書式設定を使用してクエリを作成しようとしていますが、データのバイナリ入力を文字列エスケープする方法がわかりません。次のようなものが返されます。

に挿入しpythonます。UDP( Packet, Destination, Source, Protocol, Version, Header_Length, TTL, Protoco l_UDP, Target, )値 (NULL Source_Port, '00:0C:29:B2:14:0C', '192.168.178.50', '8', '4', '20', ' 128'、'17'、'192.168.178.24'、'52371'、'8888'、'29227'、'b'データ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \ x00\x00\x00\x00'');)Destination_PortLength

Python で書式設定を使用してバイナリ文字列値を適切にエスケープするにはどうすればよいですか?

def setopUDP(destination, source, protocol, version, header_length, ttl, protocolEGP, target, source_port, destination_port, length, data):
query = ("INSERT INTO `python`.`UDP` (`Packet`, `Destination`, `Source`, `Protocol`, "
         "`Version`, `Header_Length`, `TTL`, `Protocol_UDP`, `Target`, `Source_Port`, "
         "`Destination_Port`, `Length`) VALUES (NULL, '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}');)"
         .format(destination, source, protocol, version, header_length, ttl, protocolEGP, target, source_port, destination_port, length, data))


setopCON(query)  
4

2 に答える 2

8

誰かがこのトピックを検索してここに誘導された場合に備えて

これは、「フォーマット」をエスケープする方法です。

>>> "{{}}{}".format(10)
'{}10'

そう、{{}}エスケープされ、に還元されます{}

于 2013-10-27T16:37:53.543 に答える