我正在制作一个程序,该程序将使用名为“name”的实例变量创建新对象。如果“name”没有传递到方法中,那么我的代码会从包含一组男性和女性姓名的文件中读取并选择一个。我的文件名为 names.txt,设置如下:
1. John, Alex, Adam, Matt, Sean, Max, . . .
2. John, Adam, Matt, Sean
3. Sarah, Mary, Alexa, Amy, Katie, . . .
4. Mary, Amy, Katie
该文件的组织结构使得第 1 行和第 3 行是该性别的人的所有可能名称的列表,而第 2 行和第 4 行列出了该性别尚未使用的名称。可以看出,第 1-2 行是男孩的名字,而第 3-4 行是女孩的名字。我计划使用此文件的方式是从第 2 行或第 4 行中选择一个可用名称(“读取”操作),然后重写没有该名称的行(“写入”操作)
既然我已经解释了这一点,这是我的问题:使用 python 能够对文件执行操作的方式,我最好有多个文件,每个文件有 2 条上述行或只有 1 行,还是更好有 1 个大文件?我所做的研究表明,即使要删除/重写一个名称,我也必须读取文件中的每一行,在内存中复制一份,然后在取出一个名称后完全重新输入所有数据。虽然我不打算有很多行文本,但我确实看到自己可能在这 4 行中的每一行上都有数百个名字。必须为内存中的所有数据创建空间,以便我可以从文件中删除一个名称,这似乎效率很低。我想做的另一件事是将数据分成 2 个或 4 个文件。在2个文件的情况下,我将在文件 1 上有第 1-2 行,在文件 2 上有第 3-4 行,并且必须处理我在上一段中提到的相同问题,除了规模较小(我需要担心的数据更少存储到内存中)。在 4 个文件的情况下,存储数据几乎没有问题,但现在我不得不担心维护和跟踪 4 个文件。在这样做时,我觉得我会更好地管理我的资源,但我会失去某种程度的组织,我觉得在一个文件中创建了所有 4 行。d 不得不担心维护和跟踪 4 个文件。在这样做时,我觉得我会更好地管理我的资源,但我会失去某种程度的组织,我觉得在一个文件中创建了所有 4 行。d 不得不担心维护和跟踪 4 个文件。在这样做时,我觉得我会更好地管理我的资源,但我会失去某种程度的组织,我觉得在一个文件中创建了所有 4 行。
所以我再次问:是有 1 个大文件来执行读/写操作更好,还是有多个文件更好,每个文件包含总数据的一个或两个段来执行操作?
感谢您的回复!
-Max,一个有抱负的 Python 程序员
附言。这是我的第一篇文章,我不确定我提供的信息是否太多或不够,如果可以的话,请提供反馈!