简介
在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)
这将安装虚拟环境,安装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