当前位置:首页 > 科技  > 软件

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

来源: 责编: 时间:2023-10-23 17:05:49 445观看
导读简介在Mac和Linux都支持Python,但许多开发者发现正确设置Python项目很困难。本文汇总了多平台中运行Python的方法,提高编程的效率,如下所示:使用命令行运行Python。在PyCharm(免费社区版)中运行Python。添加和删除软件包。

简介

在Mac和Linux都支持Python,但许多开发者发现正确设置Python项目很困难。本文汇总了多平台中运行Python的方法,提高编程的效率,如下所示:Lz128资讯网——每日最新资讯28at.com

  • 使用命令行运行Python。
  • 在PyCharm(免费社区版)中运行Python。
  • 添加和删除软件包。
  • 使用虚拟环境,隔离Python代码。

目录结构

使用如下图所示的目录结构(文末下载源码)。Lz128资讯网——每日最新资讯28at.com

图片图片Lz128资讯网——每日最新资讯28at.com

安装并启动PyCharm

安装了社区版PyCharm,安装完成后启动PyCharm。Lz128资讯网——每日最新资讯28at.com

【PyCharm社区版】:https://www.jetbrains.com/zh-cn/pycharm/Lz128资讯网——每日最新资讯28at.com

在PyCharm中查看文件夹内容

点击打开->选择文件夹my_python_project。Lz128资讯网——每日最新资讯28at.com

PyCharm视图PyCharm视图Lz128资讯网——每日最新资讯28at.com

scripts

此文件夹包含bash脚本。对于每个"main" Python文件,必须有一个对应的"main" bash脚本。Lz128资讯网——每日最新资讯28at.com

scripts/application.shLz128资讯网——每日最新资讯28at.com

为什么在Python项目中需要"main" bash脚本?Lz128资讯网——每日最新资讯28at.com

这些脚本是作为终端或其他程序(例如Ansible,Jenkins)的入口。它们还能确保Python应用程序在固定的虚拟环境中运行。Lz128资讯网——每日最新资讯28at.com

也可以使用不调用python程序的其他脚本。Lz128资讯网——每日最新资讯28at.com

scripts/genssl.sh — generates self signed certificatesLz128资讯网——每日最新资讯28at.com

src

main files

将包含主要入口的文件直接放在src文件夹下。Lz128资讯网——每日最新资讯28at.com

application.pyLz128资讯网——每日最新资讯28at.com

from my_package import namesif __name__ == "__main__":  sys.path.append('.')  names.echo_name("John")

packages

在src文件夹下创建Python包。为了将目录标识为Python包,Python要求添加一个空的__init.py__文件。Lz128资讯网——每日最新资讯28at.com

现在,可以将一个包中的Python类和函数导入到另一个Python文件中。Lz128资讯网——每日最新资讯28at.com

为了使导入正确,添加sys.path.append('.')很重要。Lz128资讯网——每日最新资讯28at.com

setupvenv.sh

这个bash脚本将在存储库之外的文件夹中设置Python虚拟环境。它还会根据requirements.txt安装库。Lz128资讯网——每日最新资讯28at.com

requirements.txt

该文件包含了Python标准库之外的大多数常用库。Lz128资讯网——每日最新资讯28at.com

requests库用于进行get/post请求,flask库用于接收get/post请求。Lz128资讯网——每日最新资讯28at.com

运行应用程序

终端

打开命令行应用程序(在MacOS/Linux中为Terminal,在Windows中为CMD)Lz128资讯网——每日最新资讯28at.com

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

这将安装虚拟环境,安装pip软件包,并执行Python应用程序!Lz128资讯网——每日最新资讯28at.com

第一次运行时,它将设置虚拟环境和依赖项。如果重新运行,将会看到一个较小的输出,因为它只是更新了依赖项。Lz128资讯网——每日最新资讯28at.com

首次从终端运行application.sh。注意:虚拟环境已创建,程序库已安装。首次从终端运行application.sh。注意:虚拟环境已创建,程序库已安装。Lz128资讯网——每日最新资讯28at.com

从终端重新运行application.sh的第一次运行。注意,虚拟环境已创建并安装了库。Lz128资讯网——每日最新资讯28at.com

从终端重新运行application.sh从终端重新运行application.shLz128资讯网——每日最新资讯28at.com

PyCharm

现有解释器

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

如果查看终端输出,你会找到现有解释器的位置:Lz128资讯网——每日最新资讯28at.com

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

等待PyCharm索引文件。完成后,就可以通过PyCharm运行Python应用程序了。Lz128资讯网——每日最新资讯28at.com

图片图片Lz128资讯网——每日最新资讯28at.com

选择现有解释器。你可以通过点击编辑器最右下角找到此对话框。Lz128资讯网——每日最新资讯28at.com

图片图片Lz128资讯网——每日最新资讯28at.com

一旦选择了解释器,将会显示在requirements.txt中定义的库。Lz128资讯网——每日最新资讯28at.com

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

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

图片图片Lz128资讯网——每日最新资讯28at.com

将src目录标记为"sources root",这样就可以直接从PyCharm编辑器运行application.py。Lz128资讯网——每日最新资讯28at.com

从PyCharm运行application.py

图片图片Lz128资讯网——每日最新资讯28at.com

PyCharm成功运行Lz128资讯网——每日最新资讯28at.com

源代码

可以从GitHub下载本文的Python项目相关文件。Lz128资讯网——每日最新资讯28at.com

【Python项目】:https://github.com/naraone/my_python_projectLz128资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-14616-0.html一文掌握在PyCharm中正确设置Python项目

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: OpenJDK JMH——Java程序的基准测试工具

下一篇: Nuxt 3.8 正式发布,一起来看看都有哪些功能吧!

标签:
  • 热门焦点
  • Flowable工作流引擎的科普与实践

    一.引言当我们在日常工作和业务中需要进行各种审批流程时,可能会面临一系列技术和业务上的挑战。手动处理这些审批流程可能会导致开发成本的增加以及业务复杂度的上升。在这
  • JavaScript学习 -AES加密算法

    引言在当今数字化时代,前端应用程序扮演着重要角色,用户的敏感数据经常在前端进行加密和解密操作。然而,这样的操作在网络传输和存储中可能会受到恶意攻击的威胁。为了确保数据
  • 自动化在DevOps中的力量:简化软件开发和交付

    自动化在DevOps中扮演着重要角色,它提升了DevOps的效能。通过自动化工具和方法,DevOps团队可以实现以下目标:消除手动和重复性任务。简化流程。在整个软件开发生命周期中实现更
  • 慕岩炮轰抖音,百合网今何在?

    来源:价值研究所 作者:Hernanderz&ldquo;难道就因为自己的一个产品牛逼了,从客服到总裁,都不愿意正视自己产品和运营上的问题,选择逃避了吗?&rdquo;这一番话,出自百合网联合创
  • 2天涨粉255万,又一赛道在抖音爆火

    来源:运营研究社作者 | 张知白编辑 | 杨佩汶设计 | 晏谈梦洁这个暑期,旅游赛道彻底火了:有的「地方」火了&mdash;&mdash;贵州村超旅游收入 1 个月超过 12 亿;有的「博主」火了&m
  • 腾讯盖楼,字节拆墙

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之&ldquo;想重温暴刷深渊、30+技能搭配暴搓到爽的游戏体验吗?一起上晶核,即刻暴打!&rdquo;曾凭借直播腾讯旗下代理格斗游戏《DNF》一
  • 三星Galaxy Z Fold5今日亮相:厚度缩减但仍略显厚重

    据官方此前宣布,三星将于7月26日也就是今天在韩国首尔举办Unpacked活动,届时将带来带来包括Galaxy Buds 3、Galaxy Watch 6、Galaxy Tab S9、Galaxy
  • iQOO Neo8 Pro抢先上架:首发天玑9200+ 安卓性能之王

    经过了一段时间的密集爆料,昨日iQOO官方如期对外宣布:将于5月23日推出全新的iQOO Neo8系列新品,官方称这是一款拥有旗舰级性能调校的作品。随着发布时
  • 利用职权私自解除被封帐号 Meta开除20多名员工

    11月18日消息,据外媒援引知情人士表示,过去一年时间内,Facebook母公司Meta解雇或处罚了20多名员工以及合同工,指控这些人通过内部系统以不当方式重置用户帐号,其
Top