【发布时间】:2013-04-24 18:28:34
【问题描述】:
import os,random
def randomizer(input,sample_size,output='NM_controls.xls'):
#Input file with query
query=open(input,'r').read().split('\n')
dir,file=os.path.split(input)
temp = os.path.join(dir,output)
out_file=open(temp,'w')
name_list = 833 #### got this from input
output_amount = (name_list)/(sample_size) #### = 3.6 but I want the floor value so its fine
我现在正在编写一个函数,输出的数量取决于输入。所以在我的函数中,它接收一个文件,然后对其进行扫描并对名称和其他数据进行分区。
下一部分互斥并从此列表中随机抽样。我希望它生成一定数量的文件,但这取决于列表中有多少名称。
是否可以使用 'os' 模块来创建一定数量的列表,我没有在变量中指定?
在这种情况下,它将是 3 个输出 ['output_1.txt','output_2.txt','output_3.txt']
**抱歉给您带来了困惑!所以我正在使用 OS 模块,因为我想在输入文件所在的同一目录中创建不存在的文件。这是我知道怎么做的唯一方法
【问题讨论】:
-
不太清楚你在问什么......
-
您的问题中的“使用'os'模块”是什么?
-
另外,通常情况下,“创建多个 Foo”的方法,无论 Foo 是什么,都是创建一个
list或其他集合,以及创建一个 Foo 并将其添加到的循环列表(或者,更简单地说,使用列表推导式一步完成)。 -
您可以简单地调用
open并带有 'w' 标志来创建一个新文件。无需使用os。 -
请修改您的问题,以明确表明您是在询问有关写入
n文件的问题(如您对我的回答的评论中所述),以便问题和答案对其他人有用跨度>
标签: python function operating-system output