当前位置:网站首页>盘点典型错误之TypeError: X() got multiple values for argument ‘Y‘
盘点典型错误之TypeError: X() got multiple values for argument ‘Y‘
2022-07-02 06:33:00 【七归】
个性签名:整个建筑最重要的是地基,地基不稳,地动山摇。而学技术更要扎稳基础,关注我,带你稳扎每一板块邻域的基础。
博客主页:七归的博客
南来的北往的,走过路过千万别错过,错过本篇,“精彩”可能与您失之交臂 la
Triple attack(三连击):Comment,Like and Collect—>Attention
今天来给大家分享一个常见的报错:
- 报错点
- wedgeprops={‘width’: 0.5, ‘edgecolor’: ‘w’}) # 绘制图像
- 报错原因
- TypeError: pie() got multiple values for argument ‘explode’
标题中使用‘X’,‘Y’分别替代了‘pie’函数与‘explode’参数。因为笔者觉得这种报错情况很是典型,只是函数与参数不同,报错的根本原因却是一样的——参数个数不对应。虽然目前知道了报错原因,但很多人开始不以为是,觉得这只是一个很简单的报错。其实非也。
第一种情况
- 代码截图(主要看第19行):

- 请看下面的一张报错截图:

根据以上两张截图,你会发现报错的行数是第19行,但报错原因提示是参数错误,是不是觉得牛头不对马嘴了?我也是醉了。
第二种情况
接着,我的解决方法便是注释掉第19行代码,以此查看其他语句是否也会报这类的错误。
- 已注释掉第19行代码,截图如下:

发现运行后仍然会报刚刚那个错误,所以显然并不是第19行代码的问题,那么,笔者将会把错误点摆放在‘explode’参数上面。现在,不注释第19行代码,改为注释掉第17行代码即是有‘explode’的那条语句。
- 报错点
- wedgeprops={‘width’: 0.5, ‘edgecolor’: ‘w’}) # 绘制图像
- 结果报错原因更可怕了!!!
- TypeError: can’t multiply sequence by non-int of type ‘float’
- (TypeError:无法将序列与“float”类型的非int相乘)
第三种情况
这又是啥错误啊???在一步步检查下,发现也许报错原因并不是在第17、19这两行代码的身上。于是乎,我便一同注释掉这两行代码
- 报错截图:

果不其然,这个报错跟跟第二种情况是一模一样的,说明实际上这个报错跟第17、19行代码并无直接关系。那究竟是哪错了呢?
最后,我突然想到,会不会是第16行有问题呢?不料,果真如此!其实在第二种情况已经表明错误原因是浮点数跟非数字相乘,因此,笔者从此入手,发现‘cate’列表变量是中文字符串的,因而问题就出现在这儿,我们平时为了代码能够呈现出更简洁、简单而往往会省略一些不必要的参数,然而这样可能会很容易报错的,所以,必要的参数建议还是写上。
接下来,在’cate‘变量前加上‘labels=’
- 代码如下:
cate = ['华东', '华南', '华中', '西北', '东北']
sales = [56, 31, 20, 82, 72]
plt.pie(sales, labels=cate,
explode=[0, 0, 0, 0.1, 0],
autopct='%.1f%%', pctdistance=0.8,
wedgeprops={
'width': 0.5, 'edgecolor': 'w'}) # 绘制图像
plt.show()
输出结果:
总结
遇到技术问题,笔者猜大多数人肯定首选百度的吧,当然笔者也不例外,不过我选的是百度翻译。(笔者英语渣渣)然而知道报错原因,根据这个源头一步步去调试报错的行数;调试后,如果会发生改变报错原因的情况,(如上所述)那么再根据这个改变的报错再次调试,检查报错的是哪一条语句,一般这种情况下就能解决了。
边栏推荐
- 整理秒杀系统的面试必备!!!
- C Gaode map obtains the address according to longitude and latitude
- 队列的基本概念介绍以及典型应用示例
- 一个经典约瑟夫问题的分析与解答
- Linux安装Oracle Database 19c RAC
- 「Redis源码系列」关于源码阅读的学习与思考
- 【Go实战基础】gin 高效神器,如何将参数绑定到结构体
- [staff] common symbols of staff (Hualian clef | treble clef | bass clef | rest | bar line)
- Sqli labs level 8 (Boolean blind note)
- Gocv boundary fill
猜你喜欢

Avoid breaking changes caused by modifying constructor input parameters

Cloudreve自建云盘实践,我说了没人能限制得了我的容量和速度

Qt——如何在QWidget中设置阴影效果

Installing Oracle database 19C RAC on Linux

Linux binary installation Oracle database 19C

Service de groupe minecraft

Minecraft空岛服开服

OpenShift 容器平台社区版 OKD 4.10.0部署

HackTheBox-Gunship

Luogu greedy part of the backpack line segment covers the queue to receive water
随机推荐
QT drag event
小米电视不能访问电脑共享文件的解决方案
WSL安装、美化、网络代理和远程开发
使用递归函数求解字符串的逆置问题
聊聊消息队列高性能的秘密——零拷贝技术
Installing Oracle database 19C RAC on Linux
Dip1000 implicitly tagged with fields
Mirror protocol of synthetic asset track
Driving test Baodian and its spokesperson Huang Bo appeared together to call for safe and civilized travel
win10使用docker拉取redis镜像报错read-only file system: unknown
Cloud computing in my eyes - PAAS (platform as a service)
Service de groupe minecraft
Minecraft group service opening
oracle修改数据库字符集
将一串数字顺序后移
【Go实战基础】gin 如何自定义和使用一个中间件
Tensorflow2 keras classification model
Function ‘ngram‘ is not defined
京东面试官问:LEFT JOIN关联表中用ON还是WHERE跟条件有什么区别
【Go实战基础】gin 如何设置路由