[英]Is there a way to assign object in a for loop python
我有一个名为 MediaFiles 的类,我从用户那里获取了一个路径,我从中获取了完整路径、文件名和文件扩展名,我想要做的是存储这些中的每一个
It sounds like you should use a list of MediaFile
objects.听起来您应该使用
MediaFile
对象列表。 First you need to create the list:首先,您需要创建列表:
media_files = []
Then you append elements to the list in your for loop:然后将元素附加到 for 循环中的列表:
media_files.append(MediaFile(name, filepath, extention))
You can create a list and then store your objects there:您可以创建一个列表,然后将您的对象存储在那里:
Below is the code:下面是代码:
#Define class in file named MediaFile.py
class MediaFile:
def __init__(self, file_name, file_path, file_type, file_comment=None, categorys=None, playlists=None):
self.file_name = file_name
self.file_path = file_path
self.file_type = file_type
self.file_comment = file_comment
self.categorys = categorys
self.playlists = playlists
# New file which contains actual code:
from MediaFile import MediaFile
import os.path
filenames = []
filepaths = []
fileextentions = []
# empty list to store objects
media_list=[]
d = input('Enter a path to organise: ')
for path in os.listdir(d):
full_path = os.path.join(d, path)
i=0
if os.path.isfile(full_path):
filepath = full_path
name = os.path.splitext(os.path.basename(full_path))[0]
extention = os.path.splitext(full_path)[1]
i+=1
# append the objects to a list
media_list.append(MediaFile(name, filepath, extention))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.