【新人系列】Python 入门(二):Python IDE 介绍

✍ 个人博客:https://blog.csdn.net/Newin2020?type=blog
📝 专栏地址:https://blog.csdn.net/newin2020/category_12801353.html
📣 专栏定位:为 0 基础刚入门 Python 的小伙伴提供详细的讲解,也欢迎大佬们一起交流~
📚 专栏简介:在这个专栏,我将带着大家从 0 开始入门 Python 的学习。在这个 Python 的新人系列专栏下,将会总结 Python 入门基础的一些知识点,方便大家快速入门学习~
❤️ 如果有收获的话,欢迎点赞 👍 收藏 📁 关注,您的支持就是我创作的最大动力 💪

Python 的学习过程少不了 IDE 或者代码编辑器,或者集成的开发编辑器(IDE),这些 Python 开发工具帮助开发者加快使用 Python 开发的速度并提高效率,高效的代码编辑器或者 IDE 应该会提供插件、工具等能帮助开发者高效开发的特性。

常见 Phyton IDE:PyCharm(推荐)、Sublime Text、VS Code、Eclipse + Pydev、Emacs、WingIDE、IDLE

1. PyCharm 下载

下载地址:https://www.jetbrains.com/zh-cn/pycharm/

PyCharm 是由 JetBrains 打造的一款 Python IDE。PyCharm 基本具备一切 Python IDE 的所有功能,比如:调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。

PyCharm 有分两个版本,一个是社区版(免费功能有限),一个是专业版(有一些增强功能)。

在这里插入图片描述

2. 虚拟环境

2.1 Python 解释器

计算机本来是不认识 Python 代码的,但是 Python 有解释器程序。我们前面安装 Python 环境,本质上其实是在电脑中安装 Python 解释器程序。代码随时都可以写,但是能不能运行,就要看电脑里是否有解释器程序了。

在这里插入图片描述
因此 Python 解释器就是一个计算机程序,用来翻译 Python 代码,并提交给计算机执行。对于 Windows 系统来说,Python 解释器的位置就是我们前面 Python 下载的位置,在下载好的文件夹中找到 python.exe 文件,这个其实就是 Python 解释器。

2.2 虚拟环境管理工具

不同开发项目需求中,如何保证在不同 Python 版本或依赖包环境下能互不干扰?如下场景:

  • 项目 A 采用 Python2.x,项目 B 采用 Python3.x
  • 项目 C 采用 Python 3.x Django 1.x, 项目 D 采用 Python 3.x Django 2.x

为了解决这些多版本或多环境共同的情况,就需要引出虚拟环境了:

  • virtualenv 是用来创建虚拟环境,让不同的项目拥有自己独立的的运行环境,避免相互干扰。
  • pyenv 用来管理多个 Python 版本,比如系统中有一个 2.x 的版本,安装 pyenv 后可以使用 pyenv 安装其他版本的 Python,让系统可以同时支持多个版本,而且不影响系统版本。
  • pipenv 它有两个功能,一个是管理依赖(替代 pip 管理工具)、另一个是可以创建虚拟环境。

不过这些都是第三方的虚拟环境,需自己额外去安装,但在 Python3 中我们可以使用自带的虚拟环境 venv。

2.3 创建虚拟环境

官方文档:https://docs.python.org/zh-cn/3.7/library/venv.html#moduule-veny

Python3.3 以上的版本通过 venv 模块原生支持虚拟环境,可以代替 Python 之前的 virtualenv。

该 venv 模块提供了创建轻量级 “虚拟环境”,提供与系统 Python 的隔离支持。每一个虚拟环境都有其自己的 Python 二进制(允许有不同的 Python 版本创作环境),并且可以拥有自己独立的一套 Python 包。

  • 查看帮助命令:python3 -m venv --help
  • 创建虚拟环境:python3 -m venv py3_env(py3_env 指定所创建虚拟环境的名称)

上面是基于命令行的操作方法,下面我来详细介绍一下在 PyCharm 中如何创建并配置虚拟环境。

  1. 新建项目

    a. 位置选择自己一般存放项目的地方,例如我这里选择存放在 project 文件夹下,并新创建了一个 test_python 文件夹用于存放本项目文件。

    1. 新的虚拟环境选择基于 “Virtualenv” 这个工具来创建。

    2. 位置默认为项目文件夹下的 venv 文件夹内(如果没有则自己创建),名称前加 . 则正常目录下会进行隐藏。该文件夹创建成功后,会存放 python 解释器和各种库。

      • 如果项目地址是 E:\projects\test_python
      • 则虚拟环境的地址就是 E:\projects\test_python\venv
      • 虚拟环境中的库 E:\projects\test_python\venv\Lib\site-packages
    3. 选择基本解释器,一般就选择下载的系统解释器。如果此处为空,则需要添加已安装在电脑中的 Python 路径;若没安装,则点击此处让 PyCharm 帮你自动安装。

      1. 如果勾选下面的 “Inherit global site-packages”,则会继承 Base interpreter 基本解释器 site-packages 文件夹下的所有库。
      2. 如果勾选下面的 “Make available to all projects”,则再次创建新项目时,本次选择的 Python 解释器就会显示在 “Previously configured interpreter” 下的解释器列表之中。这样创建该新项目就有两种创建方式,一种是创建新的虚拟环境,一种是使用这里的先前配置的解释器。
    4. 点击 “Create” 创建新的虚拟环境及项目。

在这里插入图片描述

  1. 查看虚拟环境

可以在 “Settings” -> “Project:xxx” -> “Python Interpreter” 下,查看 Python 解释器的虚拟环境,例如下面这个 Python 3.12 的解释器下存在两个虚拟环境,一个是 test_python 即刚才新建的虚拟环境,另一个是原来存在的虚拟环境 venv。

另外,也可以通过下图右上角的 “Add Interpreter” 来添加或创建新的虚拟环境。

在这里插入图片描述

  1. 查看并安装依赖包

我们可以直接点击上图 Package 标题上面的 “+” 号来添加所需的包,例如我下面想添加 requests 包,则可以在搜索栏搜索查找到所需的依赖包,然后点击 “Install Package” 进行下载。下载好的依赖包,会存放到虚拟环境中的 site-packages 文件夹下。

在这里插入图片描述

在这里插入图片描述

我们也可以在终端 Terminal 通过 pip list 命令查看当前虚拟环境下所安装的包,然后通过 pip install requests 来下载所需包。

另外,打开终端后可以发现命令行前出现了一个小括号,里面的名字 .venv 显示的就是我们该项目所使用的虚拟环境名称,显然该虚拟环境 PyCharm 已经帮我们自动激活了。

在这里插入图片描述

如果使用的是 Windows 电脑,执行上一步时可能会报错,这是因为当前使用的终端可能不是 cmd 而是 powershell。可以在 “Ssttrings” -> “Tools” -> “Terminal” 下找到 “Shell path”,由于我下图使用的是 mac,所以只存在 /bin/bash,但如果使用的是 Windows 则可以看到两个选项即 cmd 和 powershell,此时选择更改为 cmd 即可。

在这里插入图片描述

  1. 导出依赖包

如果我们想导出当前虚拟环境所依赖的包然后复制到其它虚拟环境使用的话,则可以使用如下命令:

pip freeze > requirements.txt

这样我们就可以在目录下获得到一个 requirements.txt 文件,里面存放着该虚拟环境用到的依赖包。

在这里插入图片描述

我们可以复制这个 requirements.txt 文件到其它虚拟环境中的目录下,然后执行下面的命令:

pip install -r requirements.txt

这样其它的虚拟环境也可以复制我当前虚拟环境用到的依赖包,从而快速配置好所需的开发环境。

3. PyCharm 常用功能

3.1 常用设置

  1. 第三方库下载

在 “Settings” -> “Project:xxx” -> “Python Interpreter” 下,可以下载想要的第三方库。

在这里插入图片描述

在这里插入图片描述

  1. IDE 主题选择

在 “Settings” -> “Appearance & Behavior” -> “Appearance” 下,可以选择自己喜欢的 IDE 主题风格。

在这里插入图片描述

  1. IDE 字体大小更改

在 “Setting” -> “Editor” -> “Font” 下,可以更改字体的首选样式(Font)、大小(Size)以及行间距(Line height)。

在这里插入图片描述

  1. 查看项目文件的结构

通过 “View” -> “Tool Windows” -> “Structure” 可以打开这个功能,在 IDE 的左下方能看到这个模块,在这个模块中可以看到当前文件的结构。

在这里插入图片描述

在这里插入图片描述

  1. 插件安装

在 “Settings” -> “Editor” -> “Plugins” 下,可以安装自己心仪的插件,通过安装插件可以对 IDE 的功能进行扩展。

在这里插入图片描述

  1. IDE 快捷键查看

通过 “Help” -> “Keyboard Shortcuts PDF”,可以获得到一个 PDF 形式的快捷键大全。

在这里插入图片描述

3.2 断点调试

常用代码的调试方法:

  • 通过 print 语句,打印变量的值,帮助我们了解代码的执行流程和变量的取值情况,这是最简单的调试方法
  • 通过 logging 模块即日志模块,去记录我们关键变量的取值
  • 使用调试器,比如 pdb、ipdb
  • 使用 IDE PyCharm 的调试功能**(推荐)**

下面我们来介绍一下 PyCharm 中,是如何进行代码调试的。

  1. 设置断点

在想要暂停程序执行以检查变量值或程序状态的代码行旁边的灰色区域,用鼠标左键点击,此时就会出现一个红点,即表示设置了一个断点。

在这里插入图片描述

  1. 启动调试

主要有两种启动方式:

  • 方式一:直接点击右上角的小虫子图标
  • 方式二:鼠标右键,选择 “Debug ‘xxx’”

Tips:
不要通过普通 Run 的方式启动程序,需要通过 Debug 方式启动,设置的断点才能生效。

在这里插入图片描述

  1. 调试工具窗口

当程序执行到断点时,会暂停执行,此时会出现调试工具窗口,主要包括以下几个部分:

在这里插入图片描述

  • 调试工具:提供了若干操作按钮。
    • Rerun ‘xxx’(command + R):重新以调试的方式运行代码。
    • Stop ‘xxx’(command + F2):停止运行当前代码调试。
    • Resume Program(option + command + R):继续执行程序一直到结束,如果当前执行处后面还有断点,则执行到下一个断点处。
    • Pause Program:如果当前程序正在运行中,点击该按钮,则会立即停止到正在运行的地方。
    • Step Over(F8):步过,单步运行,但不会进入函数体中。
    • Step Into(F7):步入,单步运行,但会进入到函数体中。
    • Step Into My Code(option + shift + F7):步入我的代码,单步运行,也会进入到函数体中,但是只会进入到你自己编写的代码函数中,不会进入到系统的函数。
    • Step Out(F8):步出,跳出当前函数体。
    • View Breakpoints…(shift + command + F8):查看当前程序的所有断点。
    • Mute Breakpoints:禁止当前程序的所有断点,使所有断点失效。
  • 变量窗口:显示当前作用域内的变量及其值,可以展开查看对象的属性。
  • 栈帧窗口:显示当前的调用栈,可以查看程序的执行路径。
  • 控制台:可以在调试过程中输入命令或查看程序的输出。

在这里插入图片描述

在这里插入图片描述

4. PyCharm 快捷键

4.1 指令大全

在 Windows 中,下面 command 指令都替换成 ctrl,option 指令都替换成 alt 即可。

Mac 键盘符号和修饰键说明:

  • ⌘ command
  • ⇧ shift
  • ⌥ option
  • ⌃ control
  • ↩︎ return / enter
  • ⌫ delete

另外,Mac 中想触发 Fx,则需要加上 fn 键,例如触发 F3,需要 fn 和 F3 一同按下才能触发 F3 键。

在这里插入图片描述
在这里插入图片描述

所有指令:

在这里插入图片描述

4.2 常用指令

  1. 快速查找文件

用快捷 command + E 可打开最近访问过的文件。

在这里插入图片描述

  1. 万能搜索

连续按两下 shift 键可以搜索文件名、类名、方法名,如果要搜索目录则在开头加斜杠 /。

在这里插入图片描述

  1. 全局搜索、全局替换

如果你要全局项目范围内搜索文件里面的关键字,那么就需要使用 command + shfit + F,或者 command + shfit + R 全局替换。

在这里插入图片描述

  1. 智能提示

智能提示是 IDE 的标配功能,PyCharm 默认有自动提示功能,但是还不够智能,比如要使用还没有引入到的模块则没法自动提示了,因此可以使用 option + enter 智能提示帮助你选择合适的操作。

在这里插入图片描述

  1. 任意位置换行

无论你的光标处在何位置,你都可以通过快捷键 shfit + enter 另起一行,这样无需把光标移到未尾去操作。

  1. 误删文件,一秒找回

在你的项目目录里,点击右键,有个 Local History 的选项,再点击子选项 Show History,你可以看到这里有个记录板。如果你想恢复删除的文件,就在删除的记录项点击右键,选择 Revert 即可恢复。

另外,也可以在这里面找到之前修改前的历史记录,同样可以选择恢复到之前的状态。

在这里插入图片描述

  1. 使用书签,快速定位
  • F3:在鼠标所在代码行,添加 / 取消匿名书签

在这里插入图片描述

  • option + F3:在鼠标所在代码行,使用助记符添加 / 取消书签

在这里插入图片描述

  • control + 0…9:定位到对应数值的书签位置
  • command + F3:显示所有书签

在这里插入图片描述

  1. 代码模板,效率编码

PyCharm 提供的代码模板,是相当实用的一个功能。它可以在你新建一个文件时,按照你预设的模板自动帮你生成一段内容,比如解释器路径,编码方法,作者详细信息等。

在这里插入图片描述

当你在键盘中敲入 command + J 时,就可以调出一个面板,从下图可以看出里面有许多预设的模板。

在这里插入图片描述

  1. Tab 轻松空格

同一个 Python 文件模块里,Tab 和四个空格缩进两种风格是不能共存的。这就需要你按照该文件原来的缩进风格来进行编码,在 PyCharm 里,可以设置自动检测原文件的缩进风格来决定当你使用 Tab 键缩进的时候,是 Tab 还是四个空格。

在这里插入图片描述

若在 Use tab character 打上勾,则你新建一个 Python 后,就会使用 Tab 进行缩进。反之,则使用四个空格进行缩进。

在这里插入图片描述

  1. 一键进行代码性能分析

点击 Run -> Profile ‘程序’,即可进行性能分析。

在这里插入图片描述

性能统计界面由 Name、Call Count、Time (ms)、Own Time (mss),4 列组成一个表格,见下图。

  • 表头 Name 显示被调用的模块或者函数;Call Count 显示被调用的为次数;Time (ms) 显示运行时间和时间百分比,时间单位为毫秒 (ms)。
  • 点击表头上的小三角可以升序或降序排列表格。
  • 在 Name 这一个列中双击某一行可以跳转到对应的代码。
  • 以 fun4 这一行举例:fun4 被调用了一次,运行时间为 1000ms,占整个运行时间的 16.7%。

Statistic:

在这里插入图片描述

点击 Call Graph(调用关系图)界面直观展示了各函数之间的调用关系、运行时间和时间百分比,见下图。

  • 箭头表示调用关系,由调用者指向被调用者
  • 矩形的左上角显示模块或者函数的名称,右上角显示被调用的的次数
  • 矩形中间显示运行时间和时间百分比

Call Graph:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/446745.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Windows命令】Windows下启动Nginx后,在任务管理器里面没有发现nginx.exe进程

如题,当在本地Windows环境下想用反向代理时,突然发现在任务管理器里面没有发现nginx.exe进程,但是端口又是占用的。这时就要用Windows命令了。 查询端口占用 netstat -ano | findstr :80 根据进程ID(pid)查询进程名称…

ESP32移植Zephyr RTOS(一)-----hello world

硬件平台:实战派ESP32-C3开发板 zephyr版本:Zephyr version 3.7.99 开发环境:ubuntu 24.4 之前一直想用正点原子阿波罗F4来写zephyr系列教程来自,但是本人水平有限RGB LCD实在是搞不懂,遂放弃,正好手头有一…

行业标准丨《变电站智能巡检导则:图像识别》(征求意见稿)

2024年8月30日,能源行业电网设备智能巡检标准化技术委员会秘书处组织召开行业标准《变电站智能巡检导则第6部分:图像识别》编制启动会,2024年9月30日,能源行业电网设备智能巡检标准化技术委员会秘书处将征求意见稿在委员单位、有关单位和中国…

SLM883x系列SLM8834两个零漂移可设置和稳定TEC温度 超紧凑高效率高精度TEC控制器

SLM883x系列SLM8834是集成了双路功率调节器的单片TEC控制器。内部带有一个线性功率级、一个脉宽调制(PWM)功率级和两个零漂移、轨对轨运算放大器。线性功率级与PWM功率级同时工作,以控制H桥配置中的内部功率级的双向输出。通过测量热传感器反…

TinyOS 点对基站通信

文章目录 一、前言1.1 发包的BlinkToRadio的数据包格式 二、混淆基站源码分析2.1 Makefile2.2 组件连接2.3 主逻辑代码 一、前言 1.1 发包的BlinkToRadio的数据包格式 如下,注意:AM层类型(1byte)即handlerID使可以在组件中修改的。 二、混淆基站源码…

请确保已在git上配置你的user.name和user.email

问题:使用vscode在远程服务器上暂存修改报错: 原因:未在远程服务器上配置该项目对应的git的username和useremail 解决方法: 在vscode中新建一个终端 命名: git config --global user.email "youexample.com&qu…

2015年国赛高教杯数学建模C题月上柳梢头解题全过程文档及程序

2015年国赛高教杯数学建模 C题 月上柳梢头 月上柳梢头,人约黄昏后”是北宋学者欧阳修的名句,写的是与佳人相约的情景。请用天文学的观点赏析该名句,并进行如下的讨论:   1. 定义“月上柳梢头”时月亮在空中的角度和什么时间称为…

SketchUp Pro 2024 for Mac 3D建模 草图设计大师软件安装【保姆级教程,简单小白轻松上手】

Mac分享吧 文章目录 SketchUp Pro 3D建模 草图设计大师软件 安装完成,软件打开效果一、Mac中安装SketchUp Pro 3D建模 草图设计大师软件——v241️⃣:下载软件2️⃣:安装软件,将安装包从左侧拖入右侧文件夹中3️⃣:应…

树莓派应用--AI项目实战篇来啦-5.OpenCV绘画函数的使用

1. 介绍 OpenCV作为一款功能强大的计算机视觉库,被广泛地应用于图像处理和计算机视觉领域。 除了在机器视觉和人工智能领域有者广泛的应用,OpenCV 还能够媲美艺术家的创造力,通过其强大的绘图函数,绘制出令人叹为观止的艺术画作。…

子组件向父组件传值$emit

点击子组件的按钮&#xff0c;将子组件的值传递给父组件&#xff0c;并进行提示。 子组件 <template><div><button click"emitIndex">clickme</button></div> </template> <script> export default {methods: {emitInde…

petalinux 自动登陆 自动启动程序

PetaLinux 自动登陆 (1) cd 到项目工程目录下&#xff1b; (2) 运行命令&#xff1a;petalinux-config -c rootfs (3) 依次选择 Image Features -> serial-autologin-root 保存退出 创建APP petalinux-create apps --template install --name init-app --enable编辑文件 …

轧钢测径仪安装前要做哪些准备工作?

轧钢测径仪是用于检测线材、棒材、管材的外径、椭圆度尺寸&#xff0c;螺纹钢的内径、横肋、纵肋尺寸的精密仪器&#xff0c;它是在线检测设备&#xff0c;被按照在环境复杂的轧制现场&#xff0c;为了保证测径仪的顺利安装&#xff0c;必要的前期准备工作要做好。 现场勘查&…

QT元对象系统特性详细介绍(信号槽、类型信息、动态设置属性)(注释)

目 录 一、元对象系统简介 二、信号和槽 三、类型信息 四、动态设置属性 一、元对象系统简介 QT中的元对象系统Q_OBJECT并不是C标准代码&#xff0c;因此在使用时需要QT的MOC&#xff08;元对象编译器&#xff09;进行预处理&#xff0c;MOC会在编译时期读取C代码中的特定…

【华为】配置BGP协议

边界网关协议BGP是一种实现自治系统AS之间的路由可达&#xff0c;并选择最佳路由的距离矢量路由协议。BGP在不同自治系统之间进行路由转发&#xff0c;分为EBGP&#xff08;外部边界网关协议&#xff09;和IBGP&#xff08;内部边界网关协议&#xff09;两种情况。 [A]in g0/0/…

自动泊车变自动撞车?高速连接器如何助力智驾安全

当ADAS成为人们行车过程中的常伴辅助&#xff0c;颠覆人类驾驶方式的无人驾驶何时才能到来&#xff1f; 今年上半年&#xff0c;搭载了L2级辅助驾驶功能的新能源汽车渗透率达到了66.4%。自动驾驶领赛道作为新能源汽车智能化竞演中的“嫡赛道”&#xff0c;有股要席卷整个市场的…

执行vue create XXX报错The operation was rejected by your operating system

创建项目&#xff1a; vue create my-project 报错&#xff1a; npm ERR! code EPERM npm ERR! syscall open npm ERR! path D:\Program Files\nodejs\node_cache\_cacache\tmp\5d2a6f8e npm ERR! errno -4048 npm ERR! Error: EPERM: operation not permitted, open D:\Pro…

macOS Sequoia 15.0.1

macOS Sequoia 推出了一系列新功能&#xff0c;可助你在 Mac 上提高生产力和创造力。通过最新连续互通功能 iPhone 镜像&#xff0c;你可以在 Mac 上访问整个 iPhone。轻松平铺窗口快速打造理想工作空间&#xff0c;还可查看通过演讲者前置演示时即将共享的内容。经过重大更新的…

到底大模型有什么用呢?一文了解什么是大模型?

大模型是指具有大规模参数和复杂计算结构的机器学习模型。本文从大模型的基本概念出发&#xff0c;对大模型领域容易混淆的相关概念进行区分&#xff0c;并就大模型的发展历程、特点和分类、泛化与微调进行了详细解读&#xff0c;供大家在了解大模型基本知识的过程中起到一定参…

探索 Python 装饰器的新境界:wrapt 库的神秘力量

文章目录 探索 Python 装饰器的新境界&#xff1a;wrapt 库的神秘力量背景&#xff1a;为何选择 wrapt&#xff1f;wrapt 是什么&#xff1f;如何安装 wrapt&#xff1f;简单的 wrapt 库函数使用方法创建简单装饰器保持元信息处理参数传递 场景应用&#xff1a;wrapt 的实际用例…

闭着眼学机器学习——决策树分类

引言&#xff1a; 在正文开始之前&#xff0c;首先给大家介绍一个不错的人工智能学习教程&#xff1a;https://www.captainbed.cn/bbs。其中包含了机器学习、深度学习、强化学习等系列教程&#xff0c;感兴趣的读者可以自行查阅。 1. 算法介绍 决策树是一种常用的机器学习算法…