问题描述:

unsupported operand type(s) for *: 'float' and 'decimal.Decimal'

问题分析:
读取greemplum 数据库 ,返回类型转换出现问题,解决办法将decimal.Decimal 转换为float类型,再相应计算

解决办法:

raw_feed=float(params['raw_feed'])

如下例子:


# -*- coding: utf-8 -*-

import pandas as pd
import numpy as np

def fadian_volumn_function(params):
    raw_feed=float(params['raw_feed'])
    yu_re_fadian=float(params['yu_re_fadian'])
    fadian_volumn=float(round((yu_re_fadian/raw_feed)*1.64*1000,2))
    return fadian_volumn

def shiwu_meihao_function(params):
    raw_feed = float(params['raw_feed'])
    head_coal=float(params['head_coal'])
    tail_coal=float(params['tail_coal'])
    shiwu_meihao=float(round(((head_coal+tail_coal)/raw_feed)*1.64*1000,2))
    return shiwu_meihao

if __name__ == '__main__':
    params={
        'create_time':'2022-07-08',
        'raw_feed':630.67,
        'yu_re_fadian':11,
        'head_coal':19.6,
        'tail_coal':27.36
    }
    shiwu_meihao=shiwu_meihao_function(params)
    print(shiwu_meihao)

    
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐