0

Does anyone know of a way to name a list in python using a String. I am writing a script that iterates through a directory and parses each file and and generates lists with the contents of the file. I would like to use the filename to name each array. I was wondering if there was a way to do it similar to the exec() method but using lists instead of just a normal variable

CRT TV
  • 185
  • 2
  • 8
  • Store it as a key in a dictionary. See [this question](https://stackoverflow.com/questions/1373164/how-do-i-create-a-variable-number-of-variables) for more details. – John Gordon Jul 13 '19 at 16:59

2 Answers2

0

You would be better off using a dictionary. Store the file name as the key value of the dictionary and place the contents inside the corresponding value for the key.

It's like my_dict = {'file1.txt':'This is the contents of file1','file2.txt':'This is the content of file2'}

0

If you really want to do it this way, then for instance:

import os
directory = os.getcwd()  # current directory or any other you would like to specify
for name in os.listdir(directory):
    globals()[name] = []

Each of the lists can be now referenced with the name of the file. Of course, this is a suboptimal approach, normally you should use other data structures, such as dictionaries, to perform your task.

Arn
  • 1,898
  • 12
  • 26