【问题标题】:Accessing Python List访问 Python 列表
【发布时间】:2018-08-07 00:09:09
【问题描述】:

您好,我有这份清单,它适用于最初的用途

gp_list_t = [int(i) for i in gp_list]
gp_lits3 = gp_list_t[0]
agencys_sp = GPSpecial.objects.filter(agencys=user_agency,is_active=True,id =gp_lits3).values_list('agencys')

现在说它们比列表-gp_list_t 上的1 值多。如何访问我想在我的变量 Agency_sp 上使用的列表中的其他值

更新代码:

gp_list_t = [int(i) for i in gp_list]
agencys_sp=GPSpecial.objects.filter(agencys=user_agency,is_active=True,id=gp_list_t).values_list('agencys')
for value, in agencys_sp:
                            agency_tu = [i for i, in agencys_sp]

返回错误 int() 参数必须是字符串、类似字节的对象或数字,而不是“列表”

【问题讨论】:

    标签: django python-3.x django-models


    【解决方案1】:

    您可以使用in 过滤运算符来查询与gp_list_t 中的ID 匹配的所有行。然后使用for 循环遍历查询集:

    gp_list_t = [int(i) for i in gp_list]
    agencys_sp = GPSpecial.objects.filter(agencys=user_agency,is_active=True,id__in=gp_list_t).values_list('agencys')
    for value, in agencys_sp:
        print(value)
    

    【讨论】:

    • 如果有更多元素或值,代码只会获取第一个元素 gp_lits3 = gp_list_t[0] 我如何确保它获得其他值
    • 我还需要将 Agency_sp 中的这些值放入一个列表中: Agency_tu = [i[0] for i in agencys_sp]
    • 是的,你可以这样做。
    • 或者,您可以使用[i for i, in agencys_sp] 提取元组中的值。
    • 你能检查我更新的代码它返回一个错误吗:int() 参数必须是一个字符串、一个类似字节的对象或一个数字,而不是“列表”但是当使用我的原始代码时它可以工作它唯一使用第一个元素,但如果列表 gp_list_t 中还有其他元素,则不会使用它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-12
    • 2010-11-29
    • 2018-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多