【问题标题】:how to compare the rows of a table using python如何使用python比较表的行
【发布时间】:2012-07-25 22:17:31
【问题描述】:

抱歉,如果标题具有误导性或描述性不强,但这是我想要的 我有一个有 2 列的表:

name|value
1.aaaa|132412
2.aaaa|234124
3.aaaa|542253
bbbb|234324
bbbb|342342

所以我想基本上比较 name="aaaa" 的行 我被卡住的部分是如何比较所有行与 name="aaaa"

sql="select value from table where name='aaaa'"
cursor.execute(sql)
result=cursor.fetchall()
for row in result:
  value=row[0]

从这里我该怎么走?

编辑: 我想比较 1 和 2,1 和 3 的值,类似地 2 和 3 等等..

【问题讨论】:

  • 你说要比较是什么意思?我假设最后一行应该是 row[0],而不是 url[0]?
  • sorted([row[0] for row in result]) 你将得到aaaa 的值排序...你想如何比较这些值?
  • 这里我使用的数字看起来很简单,但在我的程序中,我正在处理一个 url,我将对其进行解析并比较该 url 中的参数

标签: python mysql-python


【解决方案1】:

你已经弄清楚了获取所有结果的代码,然后听起来你想比较所有的值的两项组合。

sql="select value from table where name='aaaa'"
cursor.execute(sql)
results=cursor.fetchall() # changed to results to better reflect the list structure
count = len(results)
for i in range(0, count):
  for j in range (i+1, count):
    print results[i][0], results[j][0]

这将打印所有对。 . .显然你会想要解析它们,并在 print 语句所在的位置进行比较。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-14
    • 2021-01-19
    • 2020-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    相关资源
    最近更新 更多