IronPython 3.4使用pip安装xlrd触发TypeError报错求助
解决IronPython 3.4 pip安装xlrd报错的问题
问题根源
报错TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'是因为IronPython 3.4自带的pip版本过于老旧,与依赖的html5lib在解析PyPI页面编码时存在兼容性冲突,导致页面解析流程中断。
解决方案
1. 升级pip到兼容版本
IronPython 3.4对应Python 3.4,需安装最后支持Python 3.4的pip版本(20.3.4):
- 获取
get-pip.py脚本 - 执行命令:
ipy -X:Frames get-pip.py pip==20.3.4
2. 安装适配的xlrd版本
升级pip完成后,安装兼容Python 3.4的xlrd版本(1.2.0,更高版本依赖Python 3.5+特性):
ipy -X:Frames -m pip install xlrd==1.2.0
3. 手动安装备选方案
如果pip升级后仍无法正常工作,可采用手动安装方式:
- 下载xlrd 1.2.0的源码压缩包(.tar.gz格式)并解压
- 进入解压后的目录,执行:
ipy -X:Frames setup.py install
注意事项
IronPython对依赖CPython原生C扩展的库支持有限,但xlrd是纯Python实现的库,只要版本适配就能正常运行。
内容的提问来源于stack exchange,提问作者charliewhittaker
相关产品推荐
相关产品推荐

