Python Forum
List Comprehension to exclude first row
Thread Rating:
  • 3 Vote(s) - 2 Average
  • 1
  • 2
  • 3
  • 4
  • 5
List Comprehension to exclude first row
#1
Hi,

I have a list:

mylist = [ [header1, header2, header3], [1,2,3], [4,5,6]]
how could I use list comprehension to create a list that exclude the first row that contains header?

##without_header = [list comprehension statement]

so that without_header would just contain [1,2,3], [4,5,6]

Thank you!

This is has been resolved.

Thank you!
Reply
#2
Why would you use a list comprehension? Just slice it.

mylist = [ [header1, header2, header3], [1,2,3], [4,5,6]]
no_header = mylist[1:]
Reply
#3
Slicing can be used in list comprehension as well:

without_header = [row for row in my_list[1:]]
I'm not 'in'-sane. Indeed, I am so far 'out' of sane that you appear a tiny blip on the distant coast of sanity. Bucky Katt, Get Fuzzy

Da Bishop: There's a dead bishop on the landing. I don't know who keeps bringing them in here. ....but society is to blame.
Reply
#4
(Jun-09-2018, 05:00 AM)perfringo Wrote: Slicing can be used in list comprehension as well:

without_header = [row for row in my_list[1:]]
Yes, it can - only in that case list comprehension is redundant
Test everything in a Python shell (iPython, Azure Notebook, etc.)
  • Someone gave you an advice you liked? Test it - maybe the advice was actually bad.
  • Someone gave you an advice you think is bad? Test it before arguing - maybe it was good.
  • You posted a claim that something you did not test works? Be prepared to eat your hat.
Reply
#5
You are totally correct!

OP asked: "how could I use list comprehension to create a list that exclude the first row that contains header?"

There are also non-redundant ways of using list comprehension:

without_header = [v for i, v in enumerate(my_list) if i > 0]
or

without_header = [row for row in my_list if my_list.index(row) > 0]
I'm not 'in'-sane. Indeed, I am so far 'out' of sane that you appear a tiny blip on the distant coast of sanity. Bucky Katt, Get Fuzzy

Da Bishop: There's a dead bishop on the landing. I don't know who keeps bringing them in here. ....but society is to blame.
Reply
#6
(Jun-11-2018, 09:13 AM)perfringo Wrote: You are totally correct!

OP asked: "how could I use list comprehension to create a list that exclude the first row that contains header?"

There are also non-redundant ways of using list comprehension:

without_header = [v for i, v in enumerate(my_list) if i > 0]
or

without_header = [row for row in my_list if my_list.index(row) > 0]

A person asking question sometimes over-complicates possible solution due to lack of knowledge (not a sin). Those who know better may show a better way - instead of showing a wasteful code just to prove the point - and that is a sin Hand

Since slicing produces a list, it's somewhat obvious that slice may be used as a source for list comprehension.
Test everything in a Python shell (iPython, Azure Notebook, etc.)
  • Someone gave you an advice you liked? Test it - maybe the advice was actually bad.
  • Someone gave you an advice you think is bad? Test it before arguing - maybe it was good.
  • You posted a claim that something you did not test works? Be prepared to eat your hat.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  List Comprehension Issue johnywhy 5 440 Jan-14-2024, 07:58 AM
Last Post: Pedroski55
Question mypy unable to analyse types of tuple elements in a list comprehension tomciodev 1 427 Oct-17-2023, 09:46 AM
Last Post: tomciodev
  Regex Include and Exclude patterns in Same Expression starzar 2 734 May-23-2023, 09:12 AM
Last Post: Gribouillis
  [SOLVED] [loop] Exclude ranges in… range? Winfried 2 1,367 May-14-2023, 04:29 PM
Last Post: Winfried
  Using list comprehension with 'yield' in function tester_V 5 1,175 Apr-02-2023, 06:31 PM
Last Post: tester_V
  list comprehension 3lnyn0 4 1,359 Jul-12-2022, 09:49 AM
Last Post: DeaD_EyE
  List comprehension used differently coder_sw99 3 1,679 Oct-03-2021, 04:12 PM
Last Post: coder_sw99
  How to invoke a function with return statement in list comprehension? maiya 4 2,748 Jul-17-2021, 04:30 PM
Last Post: maiya
  List comprehension and Lambda cametan 2 2,196 Jun-08-2021, 08:29 AM
Last Post: cametan
  What is the difference between a generator and a list comprehension? Pedroski55 2 2,176 Jan-02-2021, 04:24 AM
Last Post: Pedroski55

Forum Jump:

User Panel Messages

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