我正在使用带有制表符分隔值的大型文本文件并将它们添加到数组中.
当我在一个32 Mb文件上运行我的代码时,python内存消耗就会通过; 使用大约500 Mb RAM.
我需要能够为2 GB文件运行此代码,甚至可能更大的文件.
我目前的代码是:
markers = []
def parseZeroIndex():
with open('chromosomedata') as zeroIndexes:
for line in zeroIndexes:
markers.append(line.split('\t'))
parseZeroIndex()
Run Code Online (Sandbox Code Playgroud)
无法按原样对我的2 GB文件运行此代码.文件看起来像这样:
per1 1029292 string1 euqye
per1 1029292 string2 euqys
Run Code Online (Sandbox Code Playgroud)
我的问题是:
什么在使用所有这些记忆?
什么是更有效的方式来做这个记忆明智?
如何从foreach()循环的输出中删除最后一个逗号?
有人可以帮我修改这段代码.
$sth = $dbh->query('SELECT * FROM `stage5` ORDER BY `stage5`.`lenght` DESC');
$sth->setFetchMode(PDO::FETCH_ASSOC);
$result = $sth->fetchAll();
foreach($result as $r) {
echo $r['lenght'], ",";
}
Run Code Online (Sandbox Code Playgroud)
这打印
105.4,102.1,
以下是正确的
105.4,102.1
我已经阅读了很多与此相关的帖子但是,我无法让它工作,我不明白.任何帮助表示赞赏!