PyCharm新建Python项目时的Pure Python与其他模板有什么区别

南乔
南乔
发布时间:2026-11-06 | 7人浏览过
原创

详细讲解PyCharm新建项目时Pure Python模板与Django、Flask、FastAPI等其他模板的区别,帮助你根据实际需求选择正确的项目模板。

在PyCharm中点击"New Project"后,左侧列表会列出多种项目模板:Pure Python、Django、Flask、FastAPI、Google App Engine等。Pure Python是一个不预设任何框架的通用模板,而其他模板则围绕特定框架自动完成目录结构、依赖安装和运行配置。它们之间的核心区别在于项目初始化时帮你做了多少事。本文从创建过程、生成内容和适用场景三个层面,帮你弄清楚每种模板到底做了什么,以及什么时候该选哪一个。

Pure Python 模板做了什么

选择 Pure Python 后,PyCharm 只做三件事:创建项目目录、配置 Python 解释器(或新建虚拟环境)、在目录下生成一个可选的 main.py 文件。除此之外,不安装任何第三方包,不生成框架配置文件,不预置运行/调试配置。

生成的 main.py 内容非常简单:

def hi():
    print("Hi, PyCharm")

if __name__ == "__main__":
    hi()

你得到的是一个"干净的白纸"——只有一个空目录加一个解释器,后续的项目结构、依赖管理、打包方式完全由你自己决定。这正是 Pure Python 的设计意图:不替你做任何技术选型。

如果你在创建项目时勾选了"Create a main welcome script",PyCharm 会生成上面那个示例文件并自动配置一条运行配置。如果不勾选,项目目录就是完全空的。

其他模板做了什么

以 Django、Flask、FastAPI 三个最常用的框架模板为例,它们在创建项目时会自动完成一系列操作,而这些操作在 Pure Python 模板中需要手动执行。

Django 模板

选择 Django 后,PyCharm 会在新建的虚拟环境中安装 django 包,然后自动执行 django-admin startproject 命令。这意味着创建完成后,项目目录中已经包含了标准的 Django 目录结构:

my_project/
├── manage.py
├── my_project/
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   ├── asgi.py
│   └── wsgi.py
└── venv/

同时,PyCharm 会自动配置 Django 运行/调试配置,在菜单中启用 Django 相关功能(比如 manage.py 任务快捷窗口),并把 settings.py 的路径写入项目设置。你可以直接点击运行按钮启动开发服务器。

创建时还可以选择"Enable Django admin",PyCharm 会在 settings.py 的 INSTALLED_APPS 中添加 django.contrib.admin 并配置对应的 URL。

Flask 模板

Flask 模板会安装 flask 包,然后生成一个包含基本路由的 app.py:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

同时自动配置好 Flask 的运行配置,让你直接运行就能在浏览器中看到结果。相比 Django,Flask 模板生成的文件少得多,但"开箱即能运行"的效果是一样的。如果在创建时勾选了模板引擎(Jinja2),还会额外创建 templates 目录。

FastAPI 模板

FastAPI 模板会安装 fastapi 和 uvicorn 两个包,生成一个包含示例端点的 main.py,并配置 uvicorn 运行配置。生成的代码通常像这样:

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def root():
    return {"message": "Hello World"}

运行配置中会写好 uvicorn main:app --reload 的启动命令,你可以直接运行并在浏览器访问自动生成的 API 文档页面。

PyCharm新建Python项目时的Pure Python与其他模板有什么区别

图1:Pure Python 与框架模板在新建项目时的操作步骤对比

Pure Python 和框架模板的具体差异

把两者放在一起比较,差异可以归纳为以下几个方面:

比较项 Pure Python 框架模板(Django / Flask / FastAPI等)
自动安装的包 无 框架本体及其核心依赖
生成的目录结构 空目录(或仅 main.py) 框架标准目录结构和配置文件
运行/调试配置 仅基本 Python 运行配置 框架专用运行配置(如 Django Server)
IDE 集成功能 通用 Python 支持 框架感知(模板补全、URL 跳转等)
创建后能否直接运行 只能运行空 main.py 启动即可看到框架默认页面或 API 文档
适合的项目类型 脚本、库、爬虫、数据处理、自定义结构 对应框架的 Web 应用开发

一个容易忽略的差异是 IDE 层面的框架感知。用 Django 模板创建的项目,PyCharm 会自动识别 Django 的 ORM 模型、模板语言和 URL 路由,在编写代码时提供智能提示和导航。用 Pure Python 创建的项目,即使后来手动安装了 Django,也需要在 Settings → Languages & Frameworks → Django 中手动启用这些功能,并指定 settings.py 的位置。

PyCharm新建Python项目时的Pure Python与其他模板有什么区别

图2:Pure Python 与 Django 模板创建后的项目目录内容差异

这些差异带来什么实际影响

选择不同模板的直接影响,不在于项目最终能做什么(技术上完全一样),而在于启动成本和IDE 配合程度。

用框架模板创建项目,相当于 PyCharm 帮你执行了框架的初始化命令,配置好了 IDE 与框架的集成,你不需要查文档就能直接开始写业务代码。而 Pure Python 则要求你自己完成这些步骤,包括安装框架、手动初始化项目结构、在 PyCharm 设置中启用对应框架的支持。

另一个实际影响是项目结构的规范性。Django 模板创建的项目严格遵循 Django 的目录约定,而 Pure Python 项目中手动搭建的 Django 项目可能会遗漏某些约定文件(比如忘记创建 asgi.py),虽然不影响本地开发,但在部署时可能出问题。

PyCharm新建Python项目时的Pure Python与其他模板有什么区别

图3:适合选择 Pure Python 模板的典型使用场景

如何选择:一个简单的判断方法

选择哪个模板,取决于一个问题:你打算写的项目是否使用 PyCharm 支持的框架?

如果答案是"是"——比如你要开发一个 Django Web 应用、一个 Flask API 服务,或者一个 FastAPI 微服务——直接选对应的框架模板。它帮你省去初始化步骤,更重要的是自动启用了 PyCharm 对该框架的深度集成。

如果答案是"不是"或"还没决定"——比如你要写一个数据处理脚本、开发一个 Python 包、做算法练习,或者打算用 PyCharm 不直接支持的框架(如 Tornado、Sanic)——选 Pure Python。它不会引入任何你不需要的东西。

注意:框架模板只在 PyCharm Professional(专业版)中提供。如果你使用的是 PyCharm Community(社区版),新建项目时只有 Pure Python 一个选项。在社区版中开发 Django、Flask 等框架项目,需要在 Pure Python 项目中手动安装和配置。

用 Pure Python 也能做框架项目

选择 Pure Python 模板并不意味着你不能使用框架。区别只在于初始化方式不同。比如在 Pure Python 项目中手动搭建一个 Django 项目,步骤是这样的:

先在 PyCharm 的 Terminal 中安装 Django:

pip install django

然后手动执行初始化命令:

django-admin startproject mysite .

注意末尾的 .,它表示在当前目录创建项目,而不是新建子目录。执行后你会看到和 Django 模板相同的文件结构。

接下来需要在 PyCharm 中手动配置 Django 支持:进入 Settings → Languages & Frameworks → Django,勾选"Enable Django Support",设置 Django project root 为项目根目录,Settings 指向 mysite/settings.py。配置完成后,PyCharm 的 Django 感知功能就会启用。

最后,手动添加运行配置:点击右上角的"Add Configuration",选择"Django Server",指定正确的 settings 文件即可。

这些步骤加起来大约需要两三分钟,效果和使用 Django 模板创建的项目完全一样。所以"Pure Python 和 Django 模板创建的项目"在最终结果上没有差别,差别只在于谁来完成初始化——PyCharm 帮你做,还是你自己做。

几种不太常见的模板

除了 Django、Flask、FastAPI 这三个高频选项外,PyCharm Professional 还提供了其他几种模板:

Google App Engine 模板会生成 App Engine 的标准目录结构,包含 app.yaml 配置文件和一个基本的请求处理模块。它面向需要部署到 Google Cloud 的项目。

Pyramid 模板安装 Pyramid 框架并执行 pcreate 命令生成项目脚手架。Pyramid 在国内使用较少,但在需要高度可定制 Web 框架的场景中有其优势。

这些模板的逻辑和 Django/Flask 完全相同:自动安装依赖 → 执行脚手架命令 → 配置 IDE 集成。只是面向的框架不同而已。

PyCharm新建Python项目时的Pure Python与其他模板有什么区别

图4:根据项目需求选择合适模板的判断流程

小结

Pure Python 是一张白纸,框架模板是预先画好格子的表格。选择哪个不涉及技术能力的高低,只取决于你的项目是否刚好要用 PyCharm 内置支持的框架。如果是,框架模板在创建那一刻就帮你省掉了初始化和 IDE 配置的工作;如果不是,Pure Python 的"什么都不做"反而是最干净的起点。理解了这层区别,在下次新建项目时就不会犹豫该选哪个了。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表