Python-TypeError: not all arguments converted during string formatting
Posted 北门吹雪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-TypeError: not all arguments converted during string formatting相关的知识,希望对你有一定的参考价值。
Where?
运行Python程序,报错出现在这一行 return "Unknow Object of %s" % value
Why?
%s 表示把 value变量装换为字符串,然而value值是Python元组,Python中元组不能直接通过%s 和 % 对其格式化,则报错
Way?
使用 format 或 format_map 代替 % 进行格式化字符串
出错代码
def use_type(value): if type(value) == int: return "int" elif type(value) == float: return "float" else: return "Unknow Object of %s" % value if __name__ == ‘__main__‘: print(use_type(10)) # 传递了元组参数 print(use_type((1, 3)))
改正代码
def use_type(value): if type(value) == int: return "int" elif type(value) == float: return "float" else: # format 方式 return "Unknow Object of {value}".format(value=value) # format_map方式 # return "Unknow Object of {value}".format_map({ # "value": value # }) if __name__ == ‘__main__‘: print(use_type(10)) # 传递 元组参数 print(use_type((1, 3)))
以上是关于Python-TypeError: not all arguments converted during string formatting的主要内容,如果未能解决你的问题,请参考以下文章
Python-TypeError: object() takes no parameters
Python - TypeError: '...' 类型的对象没有 len()
is not in the sudoers files的解决办法
如何创建 SQL 运算符组合,如 ALL IN,NOT ALL IN
Could not determine the dependencies of task ‘:app:compileDebugJavaWithJavac‘ Could not resolve all