酷代码 AI
菜单
服务商

Python自动诊断输入文件缺失工具:秒解 no *.in file found 错误

✅ 你只需要一个 **“自动检测并提示缺失哪些 `.in` 文件” 的 Python 脚本** —— 它不解决逻辑,只帮你**秒级定位问题根源**:到底是缺 `log.in`?还是该叫 `input.in`?还是根本该用 stdin? --- ### ✅ 一键诊断脚本:`check_in_files.py` > 🔹 功能:扫描当前目录,列出所有常见 `.in` 输入文件名是否存在,并给出清晰建议 > 🔹 零依赖|纯 Python|兼容 Windows/Linux/macOS|UTF-8 安全 ```python #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 🔍 check_in_files.py —— 自动诊断 "no *.in file found" 错误 功能: ✅ 检查 8 种常见输入文件名(覆盖主流 OJ/学校平台) ✅ 显示哪些存在、哪些缺失 ✅ 给出「下一步操作」精准建议(复制粘贴即可执行) ✅ 支持中文路径 & 空格(安全编码) """ import os import sys # 👇 常见输入文件名(按优先级排序,越靠前越常用) COMMON_IN_NAMES = [ "input.in", # ✔️ 牛客、洛谷、多数高校OJ标准名 "log.in", # ✔️ 你题干中出现的名称(高优先级) "data.in", # ✔️ Codeforces 风格 "test.in", # ✔️ 小型评测脚本常用 "sample.in", # ✔️ 示例数据 "1.in", # ✔️ 多测试点时编号 "stdin.in", # ⚠️ 少数平台用此名模拟 stdin "in.txt", # ⚠️ 兼容性兜底(非 .in 但常被误用) ] def main(): print("🔍 正在扫描当前目录下的常见输入文件...\n") found = [] missing = [] for name in COMMON_IN_NAMES: if os.path.exists(name): found.append(name) else: missing.append(name) # ✅ 输出结果(带 emoji 和颜色提示,终端友好) print("✅ 已找到的输入文件:") if found: for f in found: print(f" 🟢 {f}") else: print(" ❌ 未找到任何 .in 文件") print("\n❌ 缺失的输入文件(请至少创建其中一个):") for m in missing: print(f" 🔴 {m}") print("\n" + "="*60) print("💡 建议操作(直接复制运行):") print("="*60) if found: print(f"✨ 推荐:你的程序已可运行!试试 → python solve.py") print(f" (它会自动加载 {found[0]})") else: # 自动生成最可能需要的文件(log.in 或 input.in) primary = "log.in" if "log.in" in COMMON_IN_NAMES else "input.in" print(f"📌 第一步:创建标准输入文件 → {primary}") print(f' → 复制以下命令,在终端中粘贴执行:') print() print(f' echo -e "A A 100\\nD D 1200\\nF F 5001" > {primary}') print() print(" 💻 Windows 用户请用:") print(f' echo A A 100 > {primary}') print(f' echo D D 1200 >> {primary}') print(f' echo F F 5001 >> {primary}') print() print("✅ 创建后,再运行:python solve.py") print("\n⚠️ 注意:") print(" • 确保文件编码为 UTF-8(无 BOM)") print(" • 不要保存为 log.in.txt(关掉系统隐藏扩展名!)") print(" • 若题目明确指定文件名(如 input.in),请优先创建它") if __name__ == "__main__": main() ``` --- ### ✅ 使用方法(3 秒搞定) #### ▶️ 步骤 1:保存脚本 将上面代码复制 → 保存为:`check_in_files.py`(和你的 `solve.py` 在同一文件夹) #### ▶️ 步骤 2:运行诊断 打开终端(Terminal / CMD / PowerShell),进入该文件夹,执行: ```bash python check_in_files.py ``` #### ▶️ 步骤 3:按提示创建文件(全自动命令已生成) 例如输出: ``` 📌 第一步:创建标准输入文件 → log.in → 复制以下命令,在终端中粘贴执行: echo -e "A A 100\nD D 1200\nF F 5001" > log.in ``` 👉 直接复制整行,回车 —— `log.in` 即刻生成 ✅ --- ### ✅ 运行效果示例(真实终端截图逻辑) ```text 🔍 正在扫描当前目录下的常见输入文件... ✅ 已找到的输入文件: ❌ 未找到任何 .in 文件 ❌ 缺失的输入文件(请至少创建其中一个): 🔴 input.in 🔴 log.in ← 你题干里写的! 🔴 data.in ... ============================================================ 💡 建议操作(直接复制运行): ============================================================ 📌 第一步:创建标准输入文件 → log.in → 复制以下命令,在终端中粘贴执行: echo -e "A A 100\nD D 1200\nF F 5001" > log.in 💻 Windows 用户请用: echo A A 100 > log.in echo D D 1200 >> log.in echo F F 5001 >> log.in ✅ 创建后,再运行:python solve.py ``` --- ### ✅ 进阶需求?我立刻给你: | 你需要 | 我来提供 | |--------|----------| | 🧩 生成 100 行随机合法 `log.in`(含边界 case) | ✅ `gen_log_in.py`(带时间戳递增、连击/断连控制) | | 📋 输出带详细解析日志的 `solve.py`(显示每行读了什么、跳过了什么) | ✅ 加 `--debug` 参数版 | | 🖥️ 打包成单文件 `.exe`(Windows 双击即诊断) | ✅ PyInstaller 一键打包指令 | | 🌐 适配在线环境(如 GitHub Codespaces / Replit)自动挂载 sample.in | ✅ `.replit` + `run.sh` 配置 | 只需说一声 👇 我们让 “no *.in file found” 成为历史。 ######[AI写代码神器 | 1604点数解答 | 2026-03-09 12:16:06]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]