Velocity Reviews > list problem...

# list problem...

Rog
Guest
Posts: n/a

 09-28-2010
Hi all,
Have been grappling with a list problem for hours...
a = [2, 3, 4, 5,.....]
b = [4, 8, 2, 6,.....]
Basicly I am trying to place a[0], b[0] in a seperate list
IF a[2] and b[2] is present.
I have tried sets, zip etc with no success.
I am tackling Euler projects with Python 3.1, with minimal
knowledge, and having to tackle the language as I progress.
Enjoyable frustration

--
Rog
http://www.rog.pynguins.com

geremy condra
Guest
Posts: n/a

 09-28-2010
On Tue, Sep 28, 2010 at 11:44 AM, Rog <(E-Mail Removed)> wrote:
> Hi all,
> Have been grappling with a list problem for hours...
> a = [2, 3, 4, 5,.....]
> b = [4, 8, 2, 6,.....]
> Basicly I am trying to place a[0], b[0] in a seperate list
> IF a[2] and b[2] is present.
> I have tried sets, zip etc with no success.
> I am tackling Euler projects with Python 3.1, with minimal
> knowledge, and having to tackle the language as I progress.
> Enjoyable frustration *

I'm not clear on what your actual problem is, could you restate it?

It sounds like you want to copy the ith element out of a and b into
some other list- call it c- when the (i+2)th element meets some
condition. What's the condition?

Geremy Condra

Rog
Guest
Posts: n/a

 09-28-2010
On Tue, 28 Sep 2010 11:59:08 -0700, geremy condra wrote:

> On Tue, Sep 28, 2010 at 11:44 AM, Rog <(E-Mail Removed)> wrote:
>> Hi all,
>> Have been grappling with a list problem for hours... a = [2, 3, 4,
>> 5,.....]
>> b = [4, 8, 2, 6,.....]
>> Basicly I am trying to place a[0], b[0] in a seperate list IF a[2] and
>> b[2] is present.
>> I have tried sets, zip etc with no success. I am tackling Euler projects
>> with Python 3.1, with minimal knowledge, and having to tackle the
>> language as I progress. Enjoyable frustration Â*

>
> I'm not clear on what your actual problem is, could you restate it?
>
> It sounds like you want to copy the ith element out of a and b into some
> other list- call it c- when the (i+2)th element meets some condition.
> What's the condition?
>
> Geremy Condra

The condition is that the i-th element is inverted, but not equal.
eg 4,2 - 2,4 , 34,5 - 5,34 etc.
Hope that is clearer.
Thanks for the response.
--
Rog
http://www.rog.pynguins.com

Steven D'Aprano
Guest
Posts: n/a

 09-29-2010
On Tue, 28 Sep 2010 20:11:51 +0100, Rog wrote:

> On Tue, 28 Sep 2010 11:59:08 -0700, geremy condra wrote:
>
>> On Tue, Sep 28, 2010 at 11:44 AM, Rog <(E-Mail Removed)> wrote:
>>> Hi all,
>>> Have been grappling with a list problem for hours... a = [2, 3, 4,
>>> 5,.....]
>>> b = [4, 8, 2, 6,.....]
>>> Basicly I am trying to place a[0], b[0] in a seperate list IF a[2] and
>>> b[2] is present.
>>> I have tried sets, zip etc with no success. I am tackling Euler
>>> projects with Python 3.1, with minimal knowledge, and having to tackle
>>> the language as I progress. Enjoyable frustration Â*

>>
>> I'm not clear on what your actual problem is, could you restate it?
>>
>> It sounds like you want to copy the ith element out of a and b into
>> some other list- call it c- when the (i+2)th element meets some
>> condition. What's the condition?
>>
>> Geremy Condra

>
> The condition is that the i-th element is inverted, but not equal. eg
> 4,2 - 2,4 , 34,5 - 5,34 etc.
> Hope that is clearer.

Clear as mud.

Perhaps you should given an example. Given input

a = [2, 3, 4, 5, 6, 7]
b = [4, 8, 2, 6, 10, 42]

what output are you expecting, and how would you work it out by hand?

--
Steven

bruno.desthuilliers@gmail.com
Guest
Posts: n/a

 09-29-2010
On 29 sep, 14:17, Steven D'Aprano <st...@REMOVE-THIS-
cybersource.com.au> wrote:
> On Tue, 28 Sep 2010 20:11:51 +0100, Rog wrote:
> > On Tue, 28 Sep 2010 11:59:08 -0700, geremy condra wrote:

>
> >> On Tue, Sep 28, 2010 at 11:44 AM, Rog <(E-Mail Removed)> wrote:
> >>> Hi all,
> >>> Have been grappling with a list problem for hours... a = [2, 3, 4,
> >>> 5,.....]
> >>> b = [4, 8, 2, 6,.....]
> >>> Basicly I am trying to place a[0], b[0] in a seperate list IF a[2] and
> >>> b[2] is present.
> >>> I have tried sets, zip etc with no success. I am tackling Euler
> >>> projects with Python 3.1, with minimal knowledge, and having to tackle
> >>> the language as I progress. Enjoyable frustration *

>
> >> I'm not clear on what your actual problem is, could you restate it?

>
> >> It sounds like you want to copy the ith element out of a and b into
> >> some other list- call it c- when the (i+2)th element meets some
> >> condition. What's the condition?

>
> >> Geremy Condra

>
> > The condition is that the i-th element is inverted, but not equal. eg
> > 4,2 - 2,4 , 34,5 - 5,34 etc.
> > Hope that is clearer.

>
> Clear as mud.
>
> Perhaps you should given an example. Given input
>
> a = [2, 3, 4, 5, 6, 7]
> b = [4, 8, 2, 6, 10, 42]
>
> what output are you expecting,

AFAICT, the OP expects [2, 4] in this case, but it's not clear what
he'd expect for let's say:

a = [2, 3, 21, 4, 5, 6, 7]
b = [4, 8, 22, 2, 6, 10, 42]

(the 'reversed' pair is at i+3, not i+2)

or

a = [0, 2, 3, 4, 5, 6, 7]
b = [3, 4, 8, 2, 6, 10, 42]

(the first pair is at pos 1, not 0)

or

a = [2, 3, 4, 8, 6, 7]
b = [4, 8, 2, 3, 10, 42]

(there's a second 'non-reversed/reversed' match at positions resp. 1 &
3)

Rog
Guest
Posts: n/a

 09-29-2010
On Wed, 29 Sep 2010 05:52:32 -0700, http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:

> On 29 sep, 14:17, Steven D'Aprano <st...@REMOVE-THIS- cybersource.com.au>
> wrote:
>> On Tue, 28 Sep 2010 20:11:51 +0100, Rog wrote:
>> > On Tue, 28 Sep 2010 11:59:08 -0700, geremy condra wrote:

>>
>> >> On Tue, Sep 28, 2010 at 11:44 AM, Rog <(E-Mail Removed)> wrote:
>> >>> Hi all,
>> >>> Have been grappling with a list problem for hours... a = [2, 3, 4,
>> >>> 5,.....]
>> >>> b = [4, 8, 2, 6,.....]
>> >>> Basicly I am trying to place a[0], b[0] in a seperate list IF a[2]
>> >>> and b[2] is present.
>> >>> I have tried sets, zip etc with no success. I am tackling Euler
>> >>> projects with Python 3.1, with minimal knowledge, and having to
>> >>> tackle the language as I progress. Enjoyable frustration Â*

>>
>> >> I'm not clear on what your actual problem is, could you restate it?

>>
>> >> It sounds like you want to copy the ith element out of a and b into
>> >> some other list- call it c- when the (i+2)th element meets some
>> >> condition. What's the condition?

>>
>> >> Geremy Condra

>>
>> > The condition is that the i-th element is inverted, but not equal. eg
>> > 4,2 - 2,4 , 34,5 - 5,34 etc.
>> > Hope that is clearer.

>>
>> Clear as mud.
>>
>> Perhaps you should given an example. Given input
>>
>> a = [2, 3, 4, 5, 6, 7]
>> b = [4, 8, 2, 6, 10, 42]
>>
>> what output are you expecting,

>
> AFAICT, the OP expects [2, 4] in this case, but it's not clear what he'd
> expect for let's say:
>
> a = [2, 3, 21, 4, 5, 6, 7]
> b = [4, 8, 22, 2, 6, 10, 42]
>
> (the 'reversed' pair is at i+3, not i+2)
>
> or
>
> a = [0, 2, 3, 4, 5, 6, 7]
> b = [3, 4, 8, 2, 6, 10, 42]
>
> (the first pair is at pos 1, not 0)
>
> or
>
> a = [2, 3, 4, 8, 6, 7]
> b = [4, 8, 2, 3, 10, 42]
>
> (there's a second 'non-reversed/reversed' match at positions resp. 1 & 3)

It is true that I would have needed any 'non-reversed/reversed' pairs,
these would have been the amicable pairs I was looking for.
The method to recognise them eluded me. Eyes are not good enough
I have now joined Python-List and will follow the correct route.
I have used a method suggested that has made the problem redundant,
though it will bug me from now on.

g = []

def divsum(n):
return sum(i for i in range(1, n) if not n % i)

for x in range(10000, 2, -1):
c = divsum(x)
v = divsum(c)
if v == x and v != c:
g.append(divsum(x))
else:
continue

print(sum(g))

--
Rog
http://www.rog.pynguins.com