From eadb555e96f560d97ec6cabf771514177df11395 Mon Sep 17 00:00:00 2001 From: Pierre-Luc Date: Thu, 12 Sep 2024 12:14:17 -0400 Subject: [PATCH] Faster Message string representation Improved the speed of data conversion to hex string --- can/message.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/can/message.py b/can/message.py index c26733087..6dc6a83bd 100644 --- a/can/message.py +++ b/can/message.py @@ -130,12 +130,11 @@ def __str__(self) -> str: field_strings.append(flag_string) field_strings.append(f"DL: {self.dlc:2d}") - data_strings = [] + data_strings = "" if self.data is not None: - for index in range(0, min(self.dlc, len(self.data))): - data_strings.append(f"{self.data[index]:02x}") + data_strings = self.data[: min(self.dlc, len(self.data))].hex(" ") if data_strings: # if not empty - field_strings.append(" ".join(data_strings).ljust(24, " ")) + field_strings.append(data_strings.ljust(24, " ")) else: field_strings.append(" " * 24)