pystdf\pystdf\Writers.py 中的text_format方法需带self
直接上代码

@staticmethod
    def text_format(self,rectype, field_index, value):
        field_type = rectype.fieldStdfTypes[field_index]
        if value is None:
            return ""
        elif rectype is V4.gdr:
            return self.delimiter.join([str(v) for v in value])
        elif field_type[0] == 'k': # An Array of some other type
            return ','.join([format_by_type(v, field_type[2:]) for v in value])
        elif rectype is V4.mir or rectype is V4.mrr:
            field_name = rectype.fieldNames[field_index]
            if field_name.endswith('_T'): # A Date-Time in an MIR/MRR
                return strftime('%H:%M:%S %d-%b-%Y', localtime(value))
            else:
                return str(value)
        else:
            return str(value)
# 第二个需要改的地方
    def after_send(self, dataSource, data):
        line = '%s%s%s\n' % (data[0].__class__.__name__.upper(),self.delimiter,
            self.delimiter.join([self.text_format(self,data[0], i, val) for i, val in enumerate(data[1])]))
        self.stream.write(line)
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐