我需要一个列表中的字典



我正在尝试创建一个包含多个字典的列表,如:

[ { token_id: 7183938r8393}, { token_id: 82838rhf88381}, ... ]

我的代码是:

import pyodbc
from sqlalchemy import create_engine
import pandas as pd
import json
def all_token(x): 
con = pyodbc.connect(Trusted_connection='yes', driver= '{SQL Server}',server = 'DESKTOP- 
9S6405ASQLEXPRESS' ,database ='Q42') 
cursor = con.cursor()
list = []
my_dict = {}
cursor.execute("SELECT [tokens ].token_id FROM [tokens ]")
for row in cursor.fetchall():
list.append(row)
print(list)
def listToDict(list):
convert = { f"Token ID {str(i)}" : list[i][0] for i in range(0, len(list))}
return convert

all_token(list)
print(list)
dict = listToDict(list)
print(dict)

和我收到以下错误消息:

TypeError: object of type 'type' has no len()

list = []

在这一行中,您定义了一个变量list。这会把一切都搞砸,因为list是一个类。

不要使用关键字作为变量名

相反,将变量重命名为my_list

TypeError: object of type 'type' has no len()

这里的错误是list是一个保留字,不应该用作变量。更改变量名,就可以开始了!

你的缩进好像坏了。此外,你不应该用关键字命名列表。所以我用list1。您将list1发送给all_token()这没有任何意义,因为您将在all_token函数中创建list1。也许你应该输入:

return list1

代替:

print(list1)

…而不是

all_token(list1)

写……

list1 = all_token()

另外,您需要在all_token()的参数中删除x。现在你有了list1,可以将其转换为字典或任何你想要的。

相关内容

  • 没有找到相关文章

最新更新