Python这个“魔鬼细节”让我昨晚差点砸电脑!列表默认参数坑哭你,一招搞定!
哎,先叹口气。昨天本来想着下班前优化一个小功能,结果硬生生搞到凌晨两点,最后发现居然是一个我早就知道、但一不留神又踩进去的坑!气得我差点把桌上的咖啡泼屏幕上——幸好那是最后一杯。事情是这样的:我在写一个函数,用来记录用户的操作日志,每次调用就往列表里加一条记录。我寻思着,为了灵活,让调用方可以自己传一个列表进来,如果没传就用默认的空列表。于是乎,我优雅地写出了下面这段代码:def add_log(message, log_list=[]): log_list.append(message) return log_list是不是看起来人畜无害?我当时也是这么想的。...