字符串和数值如何使用3名平行阵列列表以排序3平行列表:排序,其包括在Python
NUM1 = [ 'A', 'B', 'C']
NUM2 = [ '苹果','梨','葡萄']
num3 = [2.5,4.0,.68]
我用2作为语句,后跟if语句。通过元素排序输出应为:
一个苹果2.5
b梨4.0
Ç葡萄0.68
不幸的是,我有排序使用交换排序元素中的第三NUM3值的问题。任何想法
字符串和数值如何使用3名平行阵列列表以排序3平行列表:排序,其包括在Python
NUM1 = [ 'A', 'B', 'C']
NUM2 = [ '苹果','梨','葡萄']
num3 = [2.5,4.0,.68]
我用2作为语句,后跟if语句。通过元素排序输出应为:
一个苹果2.5
b梨4.0
Ç葡萄0.68
不幸的是,我有排序使用交换排序元素中的第三NUM3值的问题。任何想法
既然你说列表是并行的,那就让我们把它们分组成元组,然后对元组列表进行排序。
num1 = ['a','b','c']
num2 = ['apple','pear','grapes']
num3 = [2.5,4.0,.68]
lst = zip(num1, num2, num3)
lst.sort()
for x1, x2, x3 in lst:
print x1, x2, x3,
print
结果是:
一个苹果2.5 b梨4.0ç葡萄0.68
从你期望的输入和输出它似乎没有任何你想要的排序 - 只需:
num1 = ['a','b','c']
num2 = ['apple','pear','grapes']
num3 = [2.5,4.0,.68]
for item in [x for t in zip(num1, num2, num3) for x in t]:
print item,
print
这确实给你提到的输出 - 这是你想要的吗?
它看起来像是交错列表。是否有分拣涉及? – 2009-11-13 03:06:43
这是功课吗? – tom10 2009-11-13 03:12:52
-1:并行列表是一个错误(当然,除非这是作业)。你为什么不先把它们合并成元组? – 2009-11-13 12:25:37