王的机器-盘一盘python系列-debug日志

本文介绍了在Python编程中遇到的一个错误,通过使用pdb进行debug来定位问题。在分析数据格式转换函数时,发现代码由于缩进问题导致程序在特定条件满足后提前返回,而非预期执行。通过PyCharm的调试功能进一步确认了问题所在,并成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

王的机器

盘一盘python系列

Matplotlab

使用pdb debug

写了数据格式转换函数

def data_converter( price_data, code, asset ):
    # convert raw data to datafram
    if asset =='FX':
        #         what's FX
        code = str(code[3:] if code[:3]=='USD' else code) + '=X'
        
        columns = [ 'open', 'close', 'low', 'high' ]
        price_dict = price_data[code]['prices']
        index = [ p['formatted_date'] for p in price_dict ] 
        price = [ [p[c] for c in columns] for p in price_dict ]
        data = pd.DataFrame( price,
                            index=pd.Index(index, name='date'),
                            columns=pd.Index(columns, name='OHLC')
                           )
        return data

之后运行:

NVDA = data_converter( stock_daily, 'NVDA', 'EQ' )
NVDA.head(3).append(NVDA.tail(3))

报错:
在这里插入图片描述
之后使用pdb进行debug

在这里插入图片描述

一直没有读懂这是什么意思,难道是运行了这个 if 之后就直接return了?不应该呀。在pycharm中进行了debug,确定是运行了这一句之后就直接跳出来了。对照原来的代码,是缩进的问题。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值