直方图中的语法错误 python
Syntax Error in plot histogram python
在下面代码的 print 语句和 plot.hist 命令中,python returns 声明这些行包含语法错误。不过,我很确定我有正确的文档,所以语句前面的 for 循环中的缩进可能不正确?谢谢!
import pyfits
import math
import numpy
hdulist = pyfits.open("VDGC_catalog_pPXF.fits")
catalog= hdulist[1].data[0]
zerr = []
verr = []
#loop to fill zerr with actual values
for i in range(0, len(catalog)):
if catalog[3][i] == 'GC' and catalog[4][i] == 'N' and catalog[10][i] == 1:
zerr.append(catalog[9][i])
for i in range(0, range(zerr)):
verr.append((zerr[i])*299792458
plot.hist(verr, bins = 100, color = "pink")
plt.show()
print "Done."
(代码太多,不能放在评论里)
除了
中缺少的右括号
for i in range(0, range(zerr)):
verr.append((zerr[i])*299792458
我可以想象你想做的事情是
for zi in zerr:
verr.append(zi*299792458)
这个更 pythonic 的版本是
verr = [zi*299792458 for zi in zerr]
在下面代码的 print 语句和 plot.hist 命令中,python returns 声明这些行包含语法错误。不过,我很确定我有正确的文档,所以语句前面的 for 循环中的缩进可能不正确?谢谢!
import pyfits
import math
import numpy
hdulist = pyfits.open("VDGC_catalog_pPXF.fits")
catalog= hdulist[1].data[0]
zerr = []
verr = []
#loop to fill zerr with actual values
for i in range(0, len(catalog)):
if catalog[3][i] == 'GC' and catalog[4][i] == 'N' and catalog[10][i] == 1:
zerr.append(catalog[9][i])
for i in range(0, range(zerr)):
verr.append((zerr[i])*299792458
plot.hist(verr, bins = 100, color = "pink")
plt.show()
print "Done."
(代码太多,不能放在评论里)
除了
中缺少的右括号for i in range(0, range(zerr)):
verr.append((zerr[i])*299792458
我可以想象你想做的事情是
for zi in zerr:
verr.append(zi*299792458)
这个更 pythonic 的版本是
verr = [zi*299792458 for zi in zerr]