unorderable types: list() > int()

Andrew Z formisc at gmail.com
Fri Oct 13 11:51:51 EDT 2017


The answer is:
 The dict returns list - my mistake obviously.

I think list.pop(0) is  better for sanity than list[0]:
 Pos= [k,v for ...].pop(0)



On Oct 13, 2017 00:23, "Andrew Z" <formisc at gmail.com> wrote:

> Hello,
> pos = {"CLown":10,"BArbie":20}
> I want to return integer (10) for the keyword that starts with "CL"
>
>
> cl_ = [v for k, v in pos.items() if k.startswith('CL')]
> cl_pos = cl_[0]
> if cl_pos > 0:
>
>    blah..
>
>
> There are 2 issues with the above:
>  a. ugly - cl_pos = cl_ [0] .  I was thinking something like
>
>
> cl_ = [v for k, v in pos.items() if k.startswith('CL')][0]
>
>   but that is too much for the eyes - in 2 weeks i'll rewrite this into
> something i can understand without banging against the desk.
> So what can be a better approach here ?
>
>
> b. in "cl_pos > 0:, cl_pos apparently is still a list. Though the run in a
> python console has no issues and report cl_pos as int.
>
>
> Appreciate.
>
>
>
>
>
>



More information about the Python-list mailing list