Python Forum
penjee . com and non-pythonic code
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
penjee . com and non-pythonic code
#3
Aside from just using while numbers, or just using a for loop, what else isn't pythonic about it?

I a little bit don't like if/else used like this, because it isn't obvious at a glance that there's *always* something that happens, every single iteration, so I'd write it like this:

>>> numbers = [12, 37, 5, 42, 8, 3]
>>> separated = {'odd': [], 'even': [] }
>>> for num in numbers:
...   key = 'even' if num % 2 == 0 else 'odd'
...   separated[key].append(num)
...
>>> separated
{'odd': [37, 5, 3], 'even': [12, 42, 8]}
But I don't know if that's any more or less pythonic than just using two different lists.
Reply


Messages In This Thread
penjee . com and non-pythonic code - by buran - Feb-21-2017, 02:27 PM
RE: penjee . com and non-pythonic code - by nilamo - Feb-28-2017, 08:15 PM
RE: penjee . com and non-pythonic code - by buran - Feb-28-2017, 09:09 PM
RE: penjee . com and non-pythonic code - by wavic - Feb-28-2017, 09:18 PM
RE: penjee . com and non-pythonic code - by buran - Feb-28-2017, 09:34 PM
RE: penjee . com and non-pythonic code - by wavic - Feb-28-2017, 09:38 PM
RE: penjee . com and non-pythonic code - by buran - Feb-28-2017, 09:46 PM
RE: penjee . com and non-pythonic code - by nilamo - Feb-28-2017, 09:41 PM
RE: penjee . com and non-pythonic code - by Ofnuts - Feb-28-2017, 09:54 PM
RE: penjee . com and non-pythonic code - by wavic - Feb-28-2017, 10:30 PM
RE: penjee . com and non-pythonic code - by zivoni - Feb-28-2017, 10:57 PM
RE: penjee . com and non-pythonic code - by nilamo - Feb-28-2017, 11:03 PM
RE: penjee . com and non-pythonic code - by Ofnuts - Mar-01-2017, 08:12 AM

Possibly Related Threads…
Thread Author Replies Views Last Post
  system programming in pythonic code Skaperen 3 3,002 Jun-21-2018, 01:57 AM
Last Post: Skaperen

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020