Python use count in list

python count number of items in list
python count frequency in list
python count items in list matching criteria
count in python 3
python list length
python count elements in list with condition
list.count c#
python count number of occurrences in string

I want to make a list of all of my saved wifi files, with a number in front of each file but my output is not what I what from my code.

import os,
path = '/etc/NetworkManager/system-connections/'
dirs = os.listdir(path)
count = sum([len(files) for r, d, files in os.walk(path)])

for file in dirs:
   for item in range(count):
   print(item, file)

Expected output:

1 wifi-test

2 androidAP

3 androidAPtest

output now:

0 wifi-test

1 androidAP

2 androidAPtest

0 wifi-test

1 androidAP

2 androidAPtest

and then it starts over

How a Loop inside a Loop works

I think there you have a misunderstanding in what happens when you put a loop inside a loop, so let me explain that first.

If you have, for example

for item_a in ['a', 'b']:
  for item_b in ['1', '2']:
    print(item_a + item_b)

then your output would be:

a1

a2

b1

b2

The code would start in the a loop first, and then it would go over both items in the inner loop. Once finished, the next item in the outer loop is b, and then it will go over both items in the inner loop again.

If you want to keep track of how many items you've gone over in your loop, you could do so with this type of pattern:

count = 0
for item_a in ['a', 'b']:
  count = count + 1
  print( str(count) + item_a)

This results in

1a

2a

But there is a shortcut. You can use a nifty function called enumerate to get the count of each item in the for loop.

for count, item_a in enumerate(['a', 'b']):
  print( str(count) + item_a)

Which will also give you

1a

2a


Solution to your problem

With all this said, you can create your list of files like so

# First we loop over os.walk to get the files in the current directory and all sub-directories
for root, dirs, files in os.walk(path):

   # And then using enumerate, we can consolidate those two for loops into one loop that properly counts everything
   for item, file in enumerate(files):
      print(item, os.path.join(root, file))

And if you don't care about sub-directories, you can just do

for item, file in enumerate(os.listdir(path)):
  print(item, file)

Python List count(), count() is an inbuilt function in Python that returns count of how many times a given object occurs in list. an object appears in a list using count() method. Los Angeles - 99% Match on Python Course. Start searching with Visymo.com.

It's not quite clear what you want with your code. What's that count for?

Maybe this is what you want:

import os

path = '/etc/NetworkManager/system-connections/'
dirs = os.listdir(path)

for num, file in enumerate(dirs):
  print(num+1, file)

Python list function, of the object you pass it in the list it is called on. Search info on Trax.de. See yourself. Learn python programming

I'm not sure what count is supposed to do here, but if you want the files in the directory (not subdirectories) you just need os.listdir.

import os
path = '/etc/NetworkManager/system-connections/'
dirs = os.listdir(path)

for i in range(len(dirs)):
    print(i + 1, dirs[i])

How to count total number of occurrences of an object in a Python list?, How do you count the number of repeated elements in a list in Python? TheAnswerHub is a top destination for finding answers online. Browse our content today! Find learn python programming on TheAnswerHub.com.

This is exactly what a nested loop will do.

Check the outputs of the loops independently:

It says you have 2 files the directory.

So this is the first thing you want to look at. Because if the output is supposed to be one, it's counting another thing inside dirs. What is it counting? Debug it by printing the loops separately.

Also, for the next problem you can solve it by hardcoding an innocent +1

print(item + 1, file)

Python, Well organized and easy to understand Web building tutorials with lots of examples of how to use HTML, CSS, JavaScript, SQL, PHP, Python, Bootstrap, Java  Python List count () Method Description. Python list method count () returns count of how many times obj occurs in list. Syntax. Parameters. Return Value. This method returns count of how many times obj occurs in list. Example. The following example shows the usage of count () method. Count for

Python List count() Method, Use Counter if you are using Python 2.7 or 3.x and you want the number of occurrences For counting the occurrences of just one list item you can use count() >  Return the number of times the value 9 appears int the list: points = [1, 4, 2, 9, 7, 8, 9, 3, 1] x = points.count (9) Try it Yourself ». List Methods.

How can I count the occurrences of a list item?, This method returns count of how many times obj occurs in list. Example. The following example shows the usage of count() method. Live Demo. #!/usr/bin/​python  Python List count () count () Parameters. Return value from count (). The count () method returns the number of times element appears in the list. Example 1: Use of count (). The count of i is: 2 The count of p is: 0 Example 2: Count Tuple and List Elements Inside List. The count of ('a', 'b')

Python List count() Method, How to count elements in lists in Python, count occurrences or test if a given value exists in a list. Learn Python functions len or count. count() is an inbuilt function in Python that returns count of how many times a given object occurs in list.

Comments
  • That is what nested loops do. You will want to look up enumerate.
  • Wauw, thanks for all of that, made my day alot easier