python字母数字排序不提供匹配';int(str)和#x27;找到重载:以下重载可用
我得到:python字母数字排序不提供匹配';int(str)和#x27;找到重载:以下重载可用,python,Python,我得到: data = set(['booklet', '4 sheets', '48 sheets', '12 sheets',44,443 ,'$sdsds', '>>>>ASdasdas']) r = sorted(data, key=lambda item: (int(item.partition(' ')[0]) if item[0].isdigit() else float('inf'),
data = set(['booklet', '4 sheets', '48 sheets', '12 sheets',44,443 ,'$sdsds', '>>>>ASdasdas'])
r = sorted(data, key=lambda item: (int(item.partition(' ')[0])
if item[0].isdigit() else float('inf'), str(item)))
print ',\n'.join(r)
回溯(最近一次呼叫最后一次):
文件“test.py”,第2行,在
r=已排序(数据,键=lambda项:(int(项.分区(“”)[0])
文件“test.py”,第3行,在
如果项[0].isdigit()否则为浮点('inf'),则为str(项)))
TypeError:“int”对象没有属性“\uuuu getitem\uuuu”
如何使这类工作 不能为整数下标,因为它们是不可编辑的。这就是您在执行
44[0]
时尝试执行的操作
你的意思很可能是:
Traceback (most recent call last):
File "test.py", line 2, in <module>
r = sorted(data, key=lambda item: (int(item.partition(' ')[0])
File "test.py", line 3, in <lambda>
if item[0].isdigit() else float('inf'), str(item)))
TypeError: 'int' object has no attribute '__getitem__'
不能为整数下标,因为它们不可iterable。这就是您在执行
44[0]
时尝试执行的操作
你的意思很可能是:
Traceback (most recent call last):
File "test.py", line 2, in <module>
r = sorted(data, key=lambda item: (int(item.partition(' ')[0])
File "test.py", line 3, in <lambda>
if item[0].isdigit() else float('inf'), str(item)))
TypeError: 'int' object has no attribute '__getitem__'
不能为整数下标,因为它们不可iterable。这就是您在执行
44[0]
时尝试执行的操作
你的意思很可能是:
Traceback (most recent call last):
File "test.py", line 2, in <module>
r = sorted(data, key=lambda item: (int(item.partition(' ')[0])
File "test.py", line 3, in <lambda>
if item[0].isdigit() else float('inf'), str(item)))
TypeError: 'int' object has no attribute '__getitem__'
不能为整数下标,因为它们不可iterable。这就是您在执行
44[0]
时尝试执行的操作
你的意思很可能是:
Traceback (most recent call last):
File "test.py", line 2, in <module>
r = sorted(data, key=lambda item: (int(item.partition(' ')[0])
File "test.py", line 3, in <lambda>
if item[0].isdigit() else float('inf'), str(item)))
TypeError: 'int' object has no attribute '__getitem__'
你想要这个
str(item)[0].isdigit()
你想要这个
str(item)[0].isdigit()
你想要这个
str(item)[0].isdigit()
你想要这个
str(item)[0].isdigit()
预期的产量是多少?你能说得具体一点吗?这很奇怪。我没有得到SyntaxError,我得到的是
TypeError:“int”对象不可下标
。在任何情况下,当item
为44时,在其上调用partition
,或者执行item[0]
,都是没有意义的,因为它不是字符串。您不会碰巧使用Squish,对吗?预期的输出是什么?您能具体点吗?这很奇怪。我没有得到SyntaxError,我得到的是TypeError:“int”对象不可下标
。在任何情况下,当item
为44时,在其上调用partition
,或者执行item[0]
,都是没有意义的,因为它不是字符串。您不会碰巧使用Squish,对吗?预期的输出是什么?您能具体点吗?这很奇怪。我没有得到SyntaxError,我得到的是TypeError:“int”对象不可下标
。在任何情况下,当item
为44时,在其上调用partition
,或者执行item[0]
,都是没有意义的,因为它不是字符串。您不会碰巧使用Squish,对吗?预期的输出是什么?您能具体点吗?这很奇怪。我没有得到SyntaxError,我得到的是TypeError:“int”对象不可下标
。在任何情况下,当item
为44时,对其调用partition
,或执行item[0]
,都没有意义,因为它不是字符串。您不会碰巧使用Squish,对吗?