Doublecheck, find occurrences of an element, in a list

  • Python
  • Thread starter late347
  • Start date
  • #1
301
15
I was making a little bit of a thought experiment with a simple program and wanted to double check it with you guys.

The idea was to utilize basic functionalities of python, regarding lists. Then the goal is to find out and print the number of times that a certain element occurs inside a particular list.

I think the code seems to work.

Is there a more specified way to test out whether or not a certain element appears in a list, and count how manys times that element appears in the list?

Python:
lista = [1, 2, 66, 77, 66, 54, -9, "citrus", 66, "citrus"]
citrusNumberOf = 0

for x in lista:
    if x == "citrus":
        citrusNumberOf = citrusNumberOf + 1
print(citrusNumberOf)
 

Answers and Replies

  • #2
954
117
Is there a more specified way to test out whether or not a certain element appears in a list, and count how manys times that element appears in the list?
Are you more interested in the formulation of the algorithms, or just how to perform such a task efficiently in Python? If it's the latter, there's a plethora of in-built functionality and libraries to achieve it, as succinctly summarised here: http://stackoverflow.com/questions/2600191/how-can-i-count-the-occurrences-of-a-list-item-in-python
 
  • Like
Likes late347
  • #4
66
24
Is there a more specified way to test out whether or not a certain element appears in a list, and count how manys times that element appears in the list?
Yes to both, just read the documentation on list. Google finds it immediately. You can write "citrus" in lista or lista.count("citrus").
 
  • Like
Likes late347
  • #5
ChrisVer
Gold Member
3,347
448
Wanted to try dictionaries, what do you think about this? In particular, does anyone think that the two fors can be combined [right now I'm blind]?
Python:
lista= [1, 2, 66, 77, 66, 54, -9, "citrus", 66, "citrus"]
choice = 77
#choice = "citrus"
#choice= 66
#choice= 123456789
A=dict()
for element in lista: A[element]=0
for element in lista: A[element] += 1
if choice not in A.keys(): A[choice]=0
print A[choice]
 
  • #6
66
24
Wanted to try dictionaries, what do you think about this? In particular, does anyone think that the two fors can be combined [right now I'm blind]?
They can:
Python:
A = { k : 1 for k in lista }
 
  • Like
Likes ChrisVer
  • #7
ChrisVer
Gold Member
3,347
448
hmm I guess it's a python version that can support it? Because I tried it in my fast python-resort: http://www.codeskulptor.org/
but it says
SyntaxError: bad input ('for')
 
  • #8
66
24
hmm I guess it's a python version that can support it? Because I tried it in my fast python-resort: http://www.codeskulptor.org/
but it says
SyntaxError: bad input ('for')
At a guess this is a failure of Skulpt. If my guess is right, that's terrible. Use a standard Python interpreter.
 
  • Like
Likes ChrisVer
  • #9
ChrisVer
Gold Member
3,347
448
your guess is right
 
  • #10
301
15
I used idle and python 3.3.5 ;32bit
 

Related Threads on Doublecheck, find occurrences of an element, in a list

Replies
3
Views
637
Replies
26
Views
4K
Replies
4
Views
686
Replies
12
Views
1K
Replies
6
Views
3K
  • Last Post
Replies
15
Views
701
  • Last Post
Replies
1
Views
2K
Replies
8
Views
619
  • Last Post
Replies
4
Views
2K
Top