Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 遇到ValueError:以10为基数的int()的文本无效:“”错误_Python_Python 3.x_Dictionary_Tuples - Fatal编程技术网

Python 遇到ValueError:以10为基数的int()的文本无效:“”错误

Python 遇到ValueError:以10为基数的int()的文本无效:“”错误,python,python-3.x,dictionary,tuples,Python,Python 3.x,Dictionary,Tuples,参考: 使用: sorted(a, key=lambda x: tuple(int(i) for i in x['host'].split('.'))[::-1]) 逻辑 要对元组进行排序,遇到 ValueError:以10为基数的int的文本无效:错误 请帮我解决一下有些字符不是数字或数字。在输入数据中,数组a 我们不知道您的输入数据,因此我无法直接指向错误,但a中的一个值似乎可能包含字符串错误 这对我来说很好,但不会给出错误: a=[{'host': u'10.219.1.1'}, {'

参考:

使用:

sorted(a, key=lambda x: tuple(int(i) for i in x['host'].split('.'))[::-1]) 
逻辑 要对元组进行排序,遇到

ValueError:以10为基数的int的文本无效:错误


请帮我解决一下

有些字符不是数字或数字。在输入数据中,数组a

我们不知道您的输入数据,因此我无法直接指向错误,但a中的一个值似乎可能包含字符串错误

这对我来说很好,但不会给出错误:

a=[{'host': u'10.219.1.1'}, {'host': u'10.91.1.1'}, {'host': u'10.219.4.1'}, {'host': u'10.91.4.1'}]

print(sorted(a, key=lambda x: tuple(int(i) for i in x['host'].split('.'))[::-1]) )
它给出以下输出:

[{'host': '10.91.1.1'}, {'host': '10.219.1.1'}, {'host': '10.91.4.1'}, {'host': '10.219.4.1'}]

您是否尝试运行了精确的代码?

请执行调试,创建for循环,拆分并转换为int。请查看x['host']包含的内容。我怀疑您会发现它包含的组件不是有效的数字,例如,在本例中,错误,.其中一个I不是数字。对于a中的x:try:printtupleinti for I in x['host'].split'。除了:print>>,x是否可以显示a的值?问题就在那里。至少有一个值不是有效的IPv4地址。a=[{'host':u'10.219.1.1'},{'host':u'10.91.1.1'},{'host':u'10.219.4.1'},{'host':'10.91.4.1'}]sorteda,key=lambda x:tupleinti for i in x['host']拆分''.[{'host':'10.91.1.1'},{'host':'10.91.4.1'},{'host':'10.219,key=lambda x:tupleinti for i in x['host'].split'.[:-1][{'host':'10.91.1.1'},{'host':'10.219.1.1'},{'host':'10.91.4.1'},{'host':'10.219.4.1'}]FYI@SujithKumar是的,但问题是,当我尝试它时,它可以很好地处理特定的数据。所以我假设你没有使用这些数据?@SujithKumar啊,你需要通过编辑问题来发布代码。它不能从注释中复制,所以我们可以测试它,因为新行是从注释中删除的,它们在Python中很重要。