Streamlit运行报错:No such file or directory: 'Survey.xlsx' 求助
解决Streamlit脚本找不到同目录Excel文件的问题
以下是几个排查和解决方向:
确认Streamlit的工作目录
Streamlit运行时的工作目录可能和脚本所在目录不一致。可以在脚本开头添加代码打印当前路径:import os st.write("当前工作目录:", os.getcwd())对比输出路径和脚本实际所在目录,若不一致,要么将Excel文件移至该工作目录,要么改用文件绝对路径。
检查文件名细节
确保文件名完全匹配:包括大小写(Linux/macOS系统严格区分大小写,Survey.xlsx和survey.xlsx视为不同文件)、无多余空格或特殊字符,同时确认文件后缀没有被系统隐藏(比如实际是Survey.xlsx.xlsx)。规范Streamlit运行命令
执行streamlit run命令时,要么先切换到脚本所在目录再运行,要么直接指定脚本的完整路径,例如:streamlit run /home/user/your_project/script.py这种方式会让Streamlit以脚本所在目录作为工作目录。
改用动态绝对路径
在代码中通过脚本路径动态拼接Excel文件路径,适配任何运行场景:import os # 获取脚本所在目录 script_dir = os.path.dirname(os.path.abspath(__file__)) # 拼接Excel文件路径 excel_file = os.path.join(script_dir, 'Survey.xlsx')
内容的提问来源于stack exchange,提问作者Nickname_used
相关产品推荐
相关产品推荐

