0

我需要将从 sql 查询返回的两个值“id”和“name”存储到我以后可以使用的变量中。我可以为此目的使用列表吗?我想一次存储来自 sql 的值,然后只引用存储的值。我能够这样做,但只有一个值(id),但现在我需要将 id 和 name 存储在一起。目的是进行字符串比较,并在此基础上分配相应的 id。

例如,首先我尝试通过 rv = plpy.execute (select id,name from aa) 从数据库中检索数据现在我需要将这两个值存储在两个变量中的某个位置,例如,让我们说 storevalueID 中的 id 和 storevalueName 中的 name 所以稍后我可以做类似的事情,如果 someXname = Replace(storeValueName("hello","")) 然后将其相关 id 分配给一些变量 lile xID = storevalueID,我不确定我们是否可以这样做,但我需要做像这样的东西。

任何帮助将不胜感激..

4

1 回答 1

1

我不确定我是否完全理解你的问题。但是,如果您之前存储了“id”列表:

mylist = []
mylist.append(id1)  # or however you get your id values
mylist.append(id2)
# ..

所以 mylist 类似于 [1, 2, 3],那么您可以简单地使用元组来存储多个关联在一起的元素:

mylist = []
mylist.append( (id1, name1) )
mylist.append( (id2, name2) )
# ..

现在 mylist 类似于[ (1, 'Bob'), (2, 'Alice'), (3, 'Carol')]. 您可以对列表中每个元组的第二个元素执行字符串比较:

mylist[0][1] == 'Bob'  # True
mylist[1][2] == 'Alice'  # True

更新 我刚刚看到更新的问题。在 plypy 中,您应该能够像这样访问变量:

for row in rv:
    the_id = row['id']
    name = row['name']

使用列名。请参阅此页面了解更多信息。

于 2011-03-13T23:14:01.703 回答