When parsing a dbc file, all signal properties are str
tpimh opened this issue · 0 comments
tpimh commented
Hi! Thanks for your library, I'm now using it to parse a DBC file and discovered that almost all the numeric values are all parsed as strings.
The values for start_bit
and sig_len
are parsed correctly as integers, but factor
, offset
, min
and max
are all str
type. I think the reason for this is that these values can be either floats or integers. One way to dynamically select between the two would be to check if the value has a dot:
def int_or_float(n):
return float(n) if '.' in n else int(n)
sig.factor = int_or_float(line_split[5])
sig.offset = int_or_float(line_split[6])
sig.min = int_or_float(line_split[7])
sig.max = int_or_float(line_split[8])