一文掌握在PyCharm中正确设置Python项目

介绍如何在PyCharm中正确设置Python项目。

长按关注《Python学研大本营》,加入读者群,分享更多精彩

简介

在Mac和Linux都支持Python,但许多开发者发现正确设置Python项目很困难。本文汇总了多平台中运行Python的方法,提高编程的效率,如下所示:

  • 使用命令行运行Python。

  • 在PyCharm(免费社区版)中运行Python。

  • 添加和删除软件包。

  • 使用虚拟环境,隔离Python代码。

目录结构

使用如下图所示的目录结构(文末下载源码)。

安装并启动PyCharm

安装了社区版PyCharm,安装完成后启动PyCharm。

【PyCharm社区版】:https://www.jetbrains.com/zh-cn/pycharm/

在PyCharm中查看文件夹内容

点击打开->选择文件夹my_python_project

PyCharm视图

scripts

此文件夹包含bash脚本。对于每个"main" Python文件,必须有一个对应的"main" bash脚本。

scripts/application.sh

为什么在Python项目中需要"main" bash脚本?

这些脚本是作为终端或其他程序(例如Ansible,Jenkins)的入口。它们还能确保Python应用程序在固定的虚拟环境中运行。

也可以使用不调用python程序的其他脚本。

scripts/genssl.sh — generates self signed certificates

src

main files

将包含主要入口的文件直接放在src文件夹下。

application.py

from my_package import names

if __name__ == "__main__":
  sys.path.append('.')
  names.echo_name("John")

packages

在src文件夹下创建Python包。为了将目录标识为Python包,Python要求添加一个空的__init.py__文件。

现在,可以将一个包中的Python类和函数导入到另一个Python文件中。

为了使导入正确,添加sys.path.append('.')很重要。

setupvenv.sh

这个bash脚本将在存储库之外的文件夹中设置Python虚拟环境。它还会根据requirements.txt安装库。

requirements.txt

该文件包含了Python标准库之外的大多数常用库。

requests库用于进行get/post请求,flask库用于接收get/post请求。

运行应用程序

终端

打开命令行应用程序(在MacOS/Linux中为Terminal,在Windows中为CMD)

  1. cd to <your project folder>/scripts
  2. ./application.sh

这将安装虚拟环境,安装pip软件包,并执行Python应用程序!

第一次运行时,它将设置虚拟环境和依赖项。如果重新运行,将会看到一个较小的输出,因为它只是更新了依赖项。

首次从终端运行application.sh。注意:虚拟环境已创建,程序库已安装。

从终端重新运行application.sh的第一次运行。注意,虚拟环境已创建并安装了库。

从终端重新运行application.sh

PyCharm

现有解释器

在使用PyCharm运行任何程序之前,需要做的第一件事是为项目设置解释器。PyCharm可以添加一个新解释器,但在这里,当运行./application.sh时,本文已经创建了一个解释器。因此,请选择 “add existing interpreter(添加现有解释器)”。

如果查看终端输出,你会找到现有解释器的位置:

Path> /Users/ms/narambunet/wdir/bin/python

等待PyCharm索引文件。完成后,就可以通过PyCharm运行Python应用程序了。

选择现有解释器。你可以通过点击编辑器最右下角找到此对话框。一旦选择了解释器,将会显示在requirements.txt中定义的库。

"src"目录标记为"Sources Root"

在通过IDE(集成开发环境)运行应用程序之前,还有一个步骤。将src文件夹标记为Sources Root。当从终端运行application.sh时,这不是必需的,但是当你想直接从PyCharm执行application.py时,这是必需的。

将src目录标记为"sources root",这样就可以直接从PyCharm编辑器运行application.py

从PyCharm运行application.py

PyCharm成功运行

源代码

可以从GitHub下载本文的Python项目相关文件。

【Python项目】:https://github.com/naraone/my_python_project

【视频】:Python应用程序的3分钟入门模板

推荐书单

《Python从入门到精通(第3版)》

《Python从入门到精通(第3版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Python进行程序开发应该掌握的各方面技术。全书共分27章,包括初识Python、Python语言基础、运算符与表达式、流程控制语句、列表和元组、字典和集合、字符串、Python中使用正则表达式、函数、面向对象程序设计、模块、文件及目录操作、操作数据库、使用进程和线程、网络编程、异常处理及程序调试、Pygame游戏编程、推箱子游戏、网络爬虫开发、火车票分析助手、数据可视化、京东电商销售数据分析与预测、Web编程、Flask框架、e起去旅行网站、Python自动化办公、AI图像识别工具等内容。书中所有知识都结合具体实例进行介绍,涉及的程序代码都给出了详细的注释,读者可轻松领会Python程序开发的精髓,快速提升开发技能。

【半价促销中】购买链接:https://item.jd.com/14055900.html

精彩回顾

《10个提高VS Code工作效率的技巧》

《5个不能错过的PyCharm插件》

《利用Python群组分析方法剖析客户行为》

《使用Python分析时序数据集中的缺失数据》

《Pydantic,数据类型确认和解析神器》

《十分钟掌握Python集成学习和随机森林算法》

长按关注《Python学研大本营》,加入读者群,分享更多精彩长按访问【IT今日热榜】,发现每日技术热点

相关推荐

  • 一个人将模型训练单机平台升级成分布式
  • 突然暴雷!MariaDB 决定放弃两款核心产品!专家猛烈抨击!
  • Web 应用程序的“三元悖论”
  • 赞!加速AI原生应用商业化,百度智能云出新招!
  • 发现一个程序员偷偷搞私活的好地方,最少1w起!
  • 这个奇葩 App,试图降低性犯罪
  • AI炒股,一个被严重低估的方向!
  • 今年,VC开始纷纷出手找“配角”
  • 苹果「最实惠」Apple Pencil仅需79刀,USB-C但无压感!网友评价:褒贬不一
  • 斯坦福公开十大主流模型透明度!Llama 2位列第一,GPT-4透明差,LeCun炮轰:盈利完全理解
  • 估值860亿美元!OpenAI再抛员工股票,仅次SpaceX,成顶级明星独角兽
  • MIT惊人再证大语言模型是世界模型!LLM能分清真理和谎言,还能被人类洗脑
  • 地铁里30秒直出PPT,这个打工神器卷疯了!彻底颠覆办公创作习惯
  • 平安科技毛倩影:从 DevOps 到 BizDevOps,金融数字化下的研发效能提升
  • 最新预测:2026 年逾 80% 企业将采用生成式 AI,相比当下增长 16 倍
  • 1024 天花板级玩法!来一场生成式 AI 构建者之旅
  • “MySQL 之父”的 MariaDB 要完蛋了?叫停两款核心产品并裁员 28%,分析师:该行为无异于自毁长城
  • Jupyter 和 Chatgpt 合体,Chapyter来了!
  • OpenAI 公开 DALL·E 3关键技术!19页论文曝光
  • 浙江二本开出博士110万安家费......