如何处理Python运行中出现 ValueErro错误
|
今天这篇我们来学习和了解“如何解决Python运行中出现 ValueErro错误”,下文的讲解详细,步骤过程清晰,对大家进一步学习和理解“如何解决Python运行中出现 ValueErro错误”有一定的帮助。有这方面学习需要的朋友就继续往下看吧! Python异常 ValueError ValueError: invalid literal for int() with base 10: '*' 试图将一个与数字无关的类型转化为整数,会抛出该异常。 >>> int("99 years ago.") Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for int() with base 10: '99 years ago.' 规避方法:int函数参数应该合法使用。int函数使用传送门:Python中的int函数使用 ValueError: too many values to unpack (expected 2) 试图遍历字典时同时遍历键和值。 >>> demo = {"China": "Beijing", "Japan": "Tokyo"} >>> for k, v in demo: ... print(k, v) ... Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: too many values to unpack (expected 2) Python只允许对字典key的遍历,因此上面的遍历方式是错误的。 规避方法 方法一:使用dict[key]的方式同时获取value >>> demo = {"China": "Beijing", "Japan": "Tokyo"} >>> for key in demo: ... print(key, demo[key]) ... China Beijing Japan Tokyo 方法二:使用items方法 >>> demo = {"China": "Beijing", "Japan": "Tokyo", "the United States": "Washington D.C."} >>> for key, value in demo.items(): ... print(key, value) ... China Beijing Japan Tokyo the United States Washington D.C. ValueError: binary mode doesn't take an encoding argument 试图以二进制模式读取文件时指定编码方式。 >>> with open("protoc-gen-go", "rb+", encoding="utf-8") as file: ... data = file.read() ... Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: binary mode doesn't take an encoding argument 规避方法:避免使用encoding关键字 >>> with open("protoc-gen-go", "rb+") as file: ... data = file.read(10) ... >>> data b'\xcf\xfa\xed\xfe\x07\x00\x00\x01\x03\x00' 以上就是关于“如何解决Python运行中出现 ValueErro错误”的相关知识,感谢各位的阅读。 (编辑:驾考网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
