我对python还不太熟悉,如果我的问题很愚蠢的话,我很抱歉。从一条sql语句中,我填写了以下语句:
config_params = [dict(
hostname=row[0], syslocation=row[1],
ipaddress=socket.inet_ntoa(struct.pack('!L', row[2])),
netmask=socket.inet_ntoa(struct.pack('!L', row[3])),
username=row[4], password=row[5], bri1=row[6], bri2=row[7],
bri3=row[8], bri4=row[9]) for row in cur.fetchall()
]
现在我可以打印整个“配置参数”如下:
^{pr2}$如何“仅”打印“hostname”中的值?它不适用于 打印配置参数['hostname']
谢谢你的帮助
您有一个字典列表,因此可以循环查看它们:
或访问单个项目:
^{pr2}$或者使用列表理解来提取主机名:
问题是您没有创建
dict
,而是创建了list
行,其中每个元素都是dict
。在所以,只打印第一行的
hostname
:或者,要打印每行的主机名:
^{pr2}$…或者,如果您愿意:
同时,如果一开始只需要一行,只需使用
fetchone
而不是在fetchall
上循环:现在你得到了一个
dict
。在还值得注意的是,许多数据库库为每一行提供了一种自动创建dict的方法,使用列名作为键,或者使用更高级的方法。例如,使用
sqlite3
:相关问题 更多 >
编程相关推荐