[问题] 不同电脑上同样的code却执行结果不一样?

楼主: sariel0322 (sariel)   2014-07-01 15:25:19
我在家里跟lab想跑一个code,结果家里跑得出来
但是在lab里跑却显示"list index out of range "
想请问一下为什么,是内存的问题吗?
程式码如下:
import gzip
import cPickle
cog_cats = {}
cogs_seqs = {}
cog_names = {}
pfam_seqs = {}
pfam_cog = {}
import os
if 'pfam_cog_dict.p' not in os.listdir('.'):
## map cog name to cog category
print 'mapping cog name to cog category'
with open('cogs.csv', 'r') as cog_file:
for line in cog_file:
line = line.rstrip()
line = line.split(',')
cog_cats[line[0]] = line[1]
cog_names[line[0]] = line[2]
print cog_cats
print cog_names
读取的档案的网址(.csv):
ftp://ftp.ncbi.nih.gov/pub/wolf/COGs/COG0303/cogs.csv
还请大家帮我解惑
作者: ck574b027 (荒围!定厝!贼!妹!)   2014-07-01 15:57:00
应该要附上 error 在哪里出错,我猜是 split 之后的index,line 印出来看看长什么样子吧。
作者: tiefblau (tiefblau)   2014-07-01 18:04:00
你要用喷error那台印line 才看的出东西阿
作者: monkeytiger (JOSE)   2014-07-01 19:49:00
如果csv档案中间有空白行或者是没有第2第3栏字段资料就会爆出index out of range
作者: yauhh (小y宝贝)   2014-07-02 14:28:00
除了判断OS不同之外,你可以再确认Python版本是否不同.并且在出错的那一行之前写个print(len(line))来看看

Links booklink

Contact Us: admin [ a t ] ucptt.com