谢谢,我说西班牙语,请耐心等待:
我需要对可能的 QTableWidget 进行智能排序,但我不知道如何执行此操作,我在表中的数据是这样的:
例子:
Item1: “12 GB”
Item1: “34 KB”
Item1: “45 MB”
Item1: “12 bytes”
Item1: “12 MB”
Item1: “12.3 KB”
Item1: “23.4 KB”
我建议尝试更改您的输入,以便您实际获得以字节为单位的数量,而不是人类可读的值。
之后,您仍然可以以不同的方式显示它。如果这不是一个选项,那么您可以尝试这样的方法来解码它:
def convert(value):
number, multiplier = value.split()
if multiplier == 'bytes':
multiplier = 1
elif multiplier == 'KB':
multiplier = 2**10
elif multiplier == 'MB':
multiplier = 2**20
elif multiplier == 'GB':
multiplier = 2**30
else:
raise RuntimeError('Unknown unit %r in %r' % (multiplier, value))
return float(number) * multiplier