
本文介绍如何通过 PowerShell(或任意终端)直接运行 Python 脚本中定义的特定函数,无需修改源码或添加主程序入口,核心方法是使用 python -c 执行内联 Python 语句并导入调用。
本文介绍如何通过 powershell(或任意终端)直接运行 python 脚本中定义的特定函数,无需修改源码或添加主程序入口,核心方法是使用 `python -c` 执行内联 python 语句并导入调用。
要在 PowerShell(或 CMD、Linux 终端等)中直接运行 my_file.py 中的 func2(),最简洁有效的方式是使用 Python 的 -c 参数执行一行式命令:
python -c "from my_file import func2; func2()"
✅ 输出结果:
second function
✅ 推荐写法说明
- 显式导入(如 from my_file import func2)比 from my_file import * 更安全、清晰,避免命名冲突和意外副作用;
- 确保当前工作目录包含 my_file.py,且文件名不含 .py 后缀(Python 模块导入时省略扩展名);
- 若函数需参数,可直接传入:
python -c "from my_file import func2; func2('hello')"
⚠️ 常见问题与注意事项
- ❌ python -m my_file func2 不生效:-m 是以模块方式运行(要求模块含 if __name__ == '__main__': 逻辑),并非函数调用机制;
- ❌ 路径错误:若 my_file.py 不在当前目录,请先用 cd 切换,或通过 sys.path 动态添加路径(不推荐用于简单调用);
- ❌ 编码/权限问题:PowerShell 默认启用执行策略,如遇 ExecutionPolicy 错误,仅需确保 python 命令本身可执行(非脚本执行限制);
? 进阶建议(可选)
如需频繁调用多个函数,可在 my_file.py 底部添加简易 CLI 支持:
快速生成专业的 Python 脚本和应用代码。一键创建完整项目结构,支持CLI、API、爬虫、Bot、Django等多种项目类型,包含完整的项目结构、配置文件、依赖管理、测试、README和文档。
if __name__ == "__main__":
import sys
if len(sys.argv) > 1 and sys.argv[1] == "func2":
func2()然后运行:python my_file.py func2 —— 但此方式需修改源码,而 -c 方案完全零侵入。
立即学习“Python免费学习笔记(深入)”;
总之,python -c 是跨平台、免修改、即用即走的最佳实践,适用于调试、自动化脚本及快速验证函数行为。

















