【问题标题】:Comparing two lists and getting the difference in numbers比较两个列表并获得数字的差异
【发布时间】:2012-12-04 02:06:49
【问题描述】:

我正在尝试了解获取两个列表的最有效方法,例如

[u'25.78', u'13.39', u'11.93', u'14.97', u'14.34', u'21.08', u'13.24', u'13.11', u'', u'19.45', u'17.56', u'20.57', u'28.50', u'24.38', u'31.13', u'17.20', u'18.52', u'6.42', u'17.31']

[u'20.77', u'24.08', u'17.66', u'14.63', u'24.40', u'42.14', u'21.93', u'30.37', u'15.20', u'21.94', u'34.20', u'18.47', u'19.05', u'24.31', u'13.55', u'14.44', u'32.53', u'18.00', u'19.95']

并获得一个包含以下内容的新列表:

[u'5.01',u'-10.69',u'-5.73']等等..

我的大脑无法理解如何在逻辑上做到这一点。我一直想引用一个for 循环,但我试图在另一个for 循环内引用一个for 循环,这让我很困惑。

【问题讨论】:

    标签: python list numbers compare


    【解决方案1】:

    关键是它同时迭代两个列表zip 将对每个列表中的项目进行配对。

    给定listAlistB

    [u'%0.2f' % (float(x) - float(y)) for x, y in zip(listA, listB)]
    

    【讨论】:

    • 您能否告知为什么此代码不起作用? [(float(str(x)) - float(str(y))) for x, y in zip(a, b)]
    • @ShawnZhang:如果没有看到ab 以及回溯,我不会知道。
    • 他们来自这个问题的两个列表数据。错误消息:ValueError:无法将字符串转换为浮点数:...为什么浮点()不能在字符串上工作? ..相当混乱。
    • 我正在测试它,但它不起作用。你测试过这个吗?
    • @ShawnZhang:它卡在空字符串 (u'') 上。
    猜你喜欢
    • 1970-01-01
    • 2023-03-19
    • 2013-04-27
    • 2014-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-26
    • 1970-01-01
    相关资源
    最近更新 更多