You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新手开发含RC5加密功能的游戏时遇IndexError错误求助

解决IndexError: List index out of range问题

你的错误出在currentFile.rsplit('.', 1)[1]这部分——当currentFile字符串里没有包含.字符时,rsplit('.',1)只会返回一个只有单个元素的列表,这时去访问索引[1]就会触发索引越界错误。

几种安全的解决方法:

方法1:使用Python标准库的os.path.splitext(兼容所有Python版本)

import os
# splitext会返回(文件名, 后缀)的元组,无后缀时后缀为空字符串
file_ext = os.path.splitext(currentFile)[1].lower()

方法2:用现代Python的pathlib模块(推荐)

from pathlib import Path
# suffix属性直接获取文件后缀,无后缀时返回空字符串
file_ext = Path(currentFile).suffix.lower()

方法3:手动判断分割结果长度

如果不想引入库,也可以先检查分割后的列表长度:

parts = currentFile.rsplit('.', 1)
if len(parts) > 1:
    file_ext = parts[1].lower()
else:
    # 这里根据你的业务需求处理无后缀的情况,比如设默认值或提示
    file_ext = ""
    # 或者 raise ValueError("文件路径没有后缀")

你可以根据自己的代码环境选择合适的方法,核心是先确保分割后存在索引1的元素,再去访问它。

内容的提问来源于stack exchange,提问作者chungtrz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 14:10:39