社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

gdlmx

gdlmx 最近创建的主题
gdlmx 最近回复了

Jupyter笔记本作为 tornado 网络服务器。你的浏览器通过一个插座连接到这个tornado服务器。

插座的I/O由tornado的 asyncio ,它依赖于 add_reader python运行时本机异步模块的实现。正如 documentation 属于 asyncio ,此方法仅在Windows中受支持 SelectorEventLoop 因此,确保在python安装中使用这种事件循环。要找出正在使用哪个eventloop实现,可以在python shell中运行以下命令:

import asyncio
print(asyncio.get_event_loop().__class__)
# Output: <class 'asyncio.windows_events._WindowsSelectorEventLoop'>

有一个正在进行的 discussion 关于允许用户更改 EventLoopPolicy 在jupyter的配置文件中。

6 年前
回复了 gdlmx 创建的主题 » 尝试在python中循环二进制文件

f.read(len) 只返回字节字符串。然后 raw 将是一个字节。

正确的循环方式是:

with open(fname, 'rb') as f:
    while True:
        raw = f.read(8)
        if len(raw)!=8:
            break # ignore the incomplete "record" if any
        record = struct.unpack("HHI", raw )
        print(record)