gpt4 book ai didi

python - 尽管已安装,但未找到模块文件 I/O

转载 作者:太空宇宙 更新时间:2023-11-03 19:52:28 26 4
gpt4 key购买 nike

我正在尝试从公共(public)来源访问一些数据,但是尽管使用 pip 安装了模块 fileio,但我仍无法使其正常工作。这是我的代码:

from fileio import read
import gzip
odffn = 'test-data/Level1_IC59_data_Run00115150_Part00000000.odf.gz'
f = gzip.open(odffn)
ev = read(f)
hit_dist = list()

while ev :
# do some analysis with the event
hit_dist.append(len(ev.hits))
# get the next event
ev = read(f)

import pylab
pylab.hist(hit_dist,30,range=(0,1000), log=True, histtype='step')
pylab.title('IceCube Hit Distribution')
pylab.xlabel('nhit')
pylab.savefig('nhits.png')

我收到以下错误:

from fileio import read
ModuleNotFoundError: No module named 'fileio'

但是,我已经使用 pip 安装程序进行了检查,

python -m pip install fileio

我发现模块已经安装了。我不认为这是 PATH 的问题,因为它与所有其他模型(即 numpy)都能很好地工作,所以我不太确定可能是什么问题。我提前感谢任何见解。

最佳答案

我在 pip 中查找了 fileio,从我所看到的来看,这似乎不是一个合法的包。从 pip 安装时,它不会安装任何可导入的 Python 模块或包。它所做的只是在 site-packages 下创建一个骨架目录。

我认为你应该退后一步,重新评估这段代码的作用:

from fileio import read
import gzip
odffn = 'test-data/Level1_IC59_data_Run00115150_Part00000000.odf.gz'
f = gzip.open(odffn)
ev = read(f)
hit_dist = list()

这看起来很好(忽略从 fileio 的导入),直到行:ev = read(f)。使用这个函数读取gzip返回的文件对象的目的是什么?该对象有自己的一组读取方法,应该能够完成这项工作:

import gzip
odffn = 'test-data/Level1_IC59_data_Run00115150_Part00000000.odf.gz'
f = gzip.open(odffn)
lines = f.readlines()

假设这是一个文本文件,它应该将整个文件读入字符串列表中,每行一个。您还可以缓冲它:

buf_size = 100
buf = f.read(buf_size)
while buf:
<do something with 1-100 characters of input>
buf = f.read(buf_size)

或缓冲整行:

line_buf = f.readline()
while line_buf:
<do something with a line of input>
line_buf = f.readline()

关于python - 尽管已安装,但未找到模块文件 I/O,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59744293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com