# 操作系统文件
.DS_Store
Thumbs.db
desktop.ini

# IDE 和编辑器
.idea/
.vscode/
*.iml
*.swp
*.swo
*~

# 但保留项目级配置示例
!.vscode/settings.example.json
!.vscode/launch.example.json
!.vscode/tasks.example.json

# Python 相关
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# 虚拟环境
venv/
env/
ENV/
env.bak/
venv.bak/
.venv/
.env/

# 测试相关
.pytest_cache/
.coverage
htmlcov/
.tox/
.nox/
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# 日志文件
*.log
*.out

# 临时文件
*.tmp
*.temp
*.bak
*.swp
*.swo
*.orig

# 压缩文件
*.zip
*.tar.gz
*.rar
*.7z

# 项目特定 - 开发工具和临时文件
lab.py
sample/

# 项目特定 - 批处理文件（保留重要的）
# 注意：不忽略所有 *.bat，只忽略特定的
# output_to_zip.bat
# release_to_laiye.bat

# 项目特定 - 文本文件（保留重要的）
# 注意：不忽略所有 *.txt，只忽略特定的
# requirements-test.txt 应该被版本控制

# 项目特定 - 测试相关（保留重要的）
# 注意：pytest.ini 和 README_TESTS.md 应该被版本控制
# tests/ 目录应该被版本控制，但其中的临时文件可以忽略
tests/__pycache__/
tests/*.pyc
tests/*.pyo
tests/.pytest_cache/
tests/temp/
tests/tmp/

# 项目特定 - 文档（保留重要的）
# 注意：PACKAGING_GUIDE.md 应该被版本控制
.claude/

# uv
uv.lock
