Pycharm新手开发指南

文章目录

  • 前言
  • 一、常用功能介绍
  • 二、常用高效pycharm使用方法
      • 关于Python技术储备
        • 一、Python所有方向的学习路线
        • 二、Python基础学习视频
        • 三、精品Python学习书籍
        • 四、Python工具包+项目源码合集
        • ①Python工具包
        • ②Python实战案例
        • ③Python小游戏源码
        • 五、面试资料
        • 六、Python兼职渠道


前言

pycharm是一款高效的python IDE工具,它非常强大,且可以跨平台,是新手首选工具!下面我给第一次使用这款软件的朋友做一个简单的使用教程,希望能给你带来帮助!

目前pycharm一共有两个版本,Professional(专业版本)」和「社区版」,专业版功能最强大,主要是为 Python 和 web 开发者而准备,是需要付费的。社区版是专业版的阉割版,比较轻量级,主要是为 Python 和数据专家而准备的。一般我们做开发,下载专业版本比较合适。

一、常用功能介绍

1、更换 Python 解释器

如果你系统里有多个版本的python,你想更换解释器,请使用下面的方法:

在File->Setting->Projec: xxx 下找到 Project Interpreter。然后修改为你需要的 Python 解释器。注意这个地方一定要注意的是:在选择 Python 解释器的时候,一定要选择到 python.exe 这个文件,而不是 python 的安装文件夹。

2、新建一个项目

我们新建一个项目,如django。

3、调整编辑器字体及其大小及控制台的字体及其大小

File–settings里

4、设置文件编码

File–settings里

5. 修改文件背景颜色

File–settings里

6、让一个 tab 键代替 4 个空格键

7、运行Python代码

在pycharm里面,我们不用借助windows下的cmd来运行程序了,pycharm直接提供了运行功能。在编写好程序之后我们有三种方法可以运行:

工具栏中的run,如果没有显示Toolbar,可以在view里面找到Toolbar并勾选。

在运行结果旁边也提供了run按钮。

直接单击鼠标右键然后单击run

8、设置模板

设置一个模板,里面可以放一些设置或者广告,下次新建的文件或模板时不用每次都输入

#!/usr/bin/env python 
# -\*- coding:utf-8 -\*-
#作者:XXX

9、断点与调试

断点功能可以帮助我们调试代码。

设置断点:在代码前面与行号后面之间的空白处,鼠标单击,就可以设置断点。如下:

调试断点:

点击那个绿色的甲虫图标,进行断点调试。

启动之后,自动跳转到第一个断点。下方debugger里会显示该断点的信息。

点击Step Over或者按F8,我们继续往下运行,到下一个断点,右边则显示当前行的信息!

二、常用高效pycharm使用方法

定位

  • Search Everywhere
  • Ctrl+光标
  • 最近打开的文件
  • 目录树的“雷达”
  • 查找

补全

  • Tab
  • 万能的Alt-Enter
  • Surroud with
  • Emmet

编辑

  • Basic
  • Extend Selection/ Shrink Selection
  • 多光标

重构

  • Rename
  • Safe delete
  • Extract

调优

颜值

其它

定位

Search Everywhere

快捷键: double shift

可以搜文件名、目录名(后面加/)、类名、方法名、函数名。

Ctrl+光标

当按住ctrl,鼠标移到标识符上面时,会显示一些信息。

当按住ctrl,并点击时,可以跳到定义处

当在定义处按住ctrl,并点击时,会弹框列出所有引用的地方,只有一个地方引用时,会直接跳

最近打开的文件

ctrl-e

目录树的“雷达”

scroll from source.

目录树会定位到当前文件所在的位置。

查找

  • ctrl-f 当前文件查找
  • shift-cmd-f 全局查找
  • 目录树某个目录右键,Find in Path,可以只在这个目录范围内进行查找

补全

Tab

这个就不用说了。

万能的Alt-Enter

不同场景有不同的动作。比如当在一个未找到引用的变量按下alt-enter时,会弹窗,让你选择自动import、创建函数参数、重命名到一个已有的变量等。

Surroud with

快捷键: ctrl-alt-t

比如将光标所在的语句或块用try…except…包住。

Emmet

Emmet使用特定的语法来展开小段代码,它类似CSS选择器,使其成为完整的HTML代码。例如,下列序列:

div#page>div.logo+ul#navigation>li*5>a

将展开为:

<divid="page"><divclass="logo"></div><ulid="navigation"><li><ahref=""></a></li><li><ahref=""></a></li><li><ahref=""></a></li><li><ahref=""></a></li><li><ahref=""></a></li></ul></div>

编辑

Basic

  • ctrl-c(复制)。在没选择范围的情况下会复制当前行,而不需要先选择整行再复制。
  • ctrl-v(粘贴)。ctrl-shift-v可以在剪贴板历史中选择一个去粘贴。
  • ctrl-x(剪切)
  • ctrl-s(保存)
  • ctrl-z(撤销)。ctrl-shift-z反撤销。
  • ctrl-/(注释)。注释后光标会自动到下一行,方便注释多行。
  • ctrl-d(复制行)
  • ctrl-shift-u(转换大小写)
  • ctrl-alt-L(格式化)
  • ctrl-alt-o(优化import)
  • shift-alt-↑↓(上下移动行)、shift-ctrl-↑↓(上下移动语句。一个语句可能有多行。并且会决定要不要进块内和出块外)。简单的说,一个是物理移动行,一个是逻辑移动语句。
  • shift-enter(在下面新开一行)。ctrl-alt-enter在上面新开一行。
  • alt-←→单词级别的移动; ctrl-←→行首/行尾; shift-←→左右移动带选择; ctrl-[]块首/块尾; cmd+↑↓上一个方法/下一个方法。
  • cmd-L(Find/ Move to next Occurrence)

Extend Selection/ Shrink Selection

往外扩展选择范围。我一般用来选中单词、两个引号或括号之间的内容。而不是用鼠标费劲的去选。

多光标

  • Alt+点击(或拖动),在某个光标处再次点击,可以取消该光标。
  • 双击Alt不放,然后按↑或↓
  • cmd-g(Add Selection for Next Occurrence)

重构

Rename

比如将一个变量rename,所有用到这个变量的地方都自动跟着变。

Safe delete

比如删除一个文件,所有用到这个文件的地方也跟着删除。

Extract

提取选中的代码块生成一个新的变量、属性、方法、参数等

  • 调优
  • Help->Edit Custom VM Options,配置多点内存,使流畅。

禁用掉没用的插件。

颜值

装插件Material Theme UI。好看很多。

其它

  • 在配对符号’")]}的关闭符号前,按相同按键,会忽略并移动光标到后面,不用老远的去按→方向键。
  • Smart Keys(Preference->Editor->General->Smart Keys设置)
    • 输入单个时插入一对引号或括号
    • 当选中的时候输入引号或括号,在两边加上引号或括号,而不替换选择的内容
    • 换行时智能缩进
    • 在语句内换行时会自动拼上反斜杠/
    • 定义方法时自动插入self
    • “Reformat on paste” and “smart indent pasted lines”
  • 贤者模式(免打扰模式进行编码)
  • New Scratch File. 临时编辑文件时用
  • Copy Reference. 比如在某个函数右键Copy Reference,粘贴到django shell里面方便import。
  • 静态分析。比如找出重复代码、检查代码是否符合pep8等.
  • 在目录树新建文件的时候,可以多层,连目录一起创建。类似mkdir -p的效果。比如输入foo/bar/baz.py,如果没有目录foo和bar,会自动创建。
  • 在编辑器内选择后,可以右键“search with google”、“execute selected in console”
  • 编辑代码的时候,行号右边会有标记,插入、删除、修改是不同标记,可点击进行diff和rollback
  • 在目录树右键->Local History,可显示改动历史,并可还原到某个历史。(注:跟git没关系)

关于Python技术储备

获取Pycharm官方激活码/安装包

保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

附Python学习资料:

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python基础学习视频

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python工具包+项目源码合集
①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

六、Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

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

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

相关文章

武汉芯源半导体首款车规级MCU,CW32A030C8T7通过AEC-Q100测试考核

近日&#xff0c;武汉芯源半导体正式发布首款基于Cortex-M0内核的CW32A030C8T7车规级MCU&#xff0c;这是武汉芯源半导体首款通过AEC-Q100 (Grade 2)车规标准的主流通用型车规MCU产品。 CW32A030C8T7通过AEC-Q100车规可靠性测试 作为武汉芯源半导体首款车规级MCU产品&#xff0…

Spring整合web环境

目录 Javaweb三大组件及环境特点 Spring整合web环境的思路及实现 Spring的web开发组件spring-web MVC框架思想及其设计思路 Javaweb三大组件及环境特点 Spring整合web环境的思路及实现 package com.xfy.listener;import com.xfy.config.SpringConfig; import org.springfra…

Linux中的fork()函数的面试题目

1.面试题目1 (1)fork 以后&#xff0c;父进程打开的文件指针位置在子进程里面是否一样&#xff1f;(先open再fork) (2)能否用代码简单的验证一下? (3)先fork再打开文件父子进程是否共享偏移量?父进程打开的文件指针位置在子进程里面是否一样&#xff1f;能否用代码简单验证一…

代理模式 1、静态代理 2、动态代理 jdk自带动态代理 3、Cglib代理

文章目录 代理模式1、静态代理2、动态代理jdk自带动态代理 3、Cglib代理 来和大家聊聊代理模式 代理模式 代理模式&#xff1a;即通过代理对象访问目标对象&#xff0c;实现目标对象的方法。这样做的好处是&#xff1a;可以在目标对象实现的基础上&#xff0c;增强额外的功能操…

【Openstack Train安装】八、placement安装

Placement 肩负着这样的历史使命&#xff0c;最早在 Newton 版本被引入到 openstack/nova repo&#xff0c;以 API 的形式进行孵化&#xff0c;所以也经常被称呼为 Placement API。它参与到 nova-scheduler 选择目标主机的调度流程中&#xff0c;负责跟踪记录 Resource Provide…

java学校高校运动会报名信息管理系统springboot+jsp

课题研究方案&#xff1a; 结合用户的使用需求&#xff0c;本系统采用运用较为广泛的Java语言&#xff0c;springboot框架&#xff0c;HTML语言等关键技术&#xff0c;并在idea开发平台上设计与研发创业学院运动会管理系统。同时&#xff0c;使用MySQL数据库&#xff0c;设计实…

五种多目标优化算法(MOPSO、MOAHA、NSGA2、NSGA3、MOGWO)求解微电网多目标优化调度(MATLAB)

一、多目标优化算法简介 &#xff08;1&#xff09;多目标粒子群优化算法MOPSO 多目标应用&#xff1a;基于多目标粒子群优化算法MOPSO求解微电网多目标优化调度&#xff08;MATLAB代码&#xff09;-CSDN博客 &#xff08;2&#xff09;多目标人工蜂鸟算法&#xff08;MOAHA…

nexus制品库的介绍及详细部署使用

一、nexus 介绍 Nexus 是一个强大的仓库管理工具&#xff0c;用于管理和分发 Maven、npm、Docker 等软件包。它提供了一个集中的存储库&#xff0c;用于存储和管理软件包&#xff0c;并提供了版本控制、访问控制、构建和部署等功能。 Nexus 可以帮助开发团队提高软件包管理的效…

【Linux】cd 命令使用

cd&#xff08;英文全拼&#xff1a;change directory&#xff09;命令用于改变当前工作目录的命令&#xff0c;切换到指定的路径。 ~ 也表示为 home 目录 的意思。. 则是表示目前所在的目录。.. 则表示目前目录位置的上一层目录。 语法 cd [目录] 命令选项及作用 执行令 …

C++——AVL树

作者&#xff1a;几冬雪来 时间&#xff1a;2023年11月30日 内容&#xff1a;C板块AVL树讲解 目录 前言&#xff1a; AVL树与搜索二叉树之间的关系&#xff1a; AVL树概念&#xff1a; 插入结点&#xff1a; 平衡因子&#xff1a; 旋转&#xff1a; 双旋&#xff1a; …

基于SpringBoot母婴商城

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本母婴商城系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

网络基础『发展 ‖ 协议 ‖ 传输 ‖ 地址』

&#x1f52d;个人主页&#xff1a; 北 海 &#x1f6dc;所属专栏&#xff1a; 神奇的网络世界 &#x1f4bb;操作环境&#xff1a; CentOS 7.6 阿里云远程服务器 文章目录 &#x1f324;️前言&#x1f326;️正文1.网络发展1.1.背景1.2.类型 2.网络协议2.1.什么是协议2.2.协议…

SpringCloud核心组件

Eureka 注册中心&#xff0c;服务的注册与发现 Feign远程调用 Ribbon负载均衡&#xff0c;默认轮询 Hystrix 熔断 降级 Zuul微服务网关&#xff08;这个组件负责网络路由&#xff0c;可以做统一的降级、限流、认证授权、安全&#xff09; Eureka 微服务的功能主要有以下几…

算法通关村第六关—序列恢复二叉树(青铜)

根据序列恢复二叉树 示例 给定序列恢复二叉树(1)前序&#xff1a;1 2 3 4 5 6 8 7 9 10 11 12 13 15 14(2)中序&#xff1a;3 4 8 6 7 5 2 1 10 9 11 15 13 14 123)后序&#xff1a;8 7 6 5 4 3 2 10 15 14 13 12 11 9 1 一、前中序列恢复二叉树 (1)前序&#xff1a;1 2 3…

电商营销场景的RocketMQ实战01-RocketMQ原理

架构图 Broker主从架构与集群模式 RocketMQ原理深入剖析 Broker主从架构原理 HAConnection与HAClient Broker基于raft协议的主从架构 Consumer运行原理 基础知识 001_RocketMQ架构设计与运行流程分析 RocketMQ这一块&#xff0c;非常关键的一个重要的技术&#xff0c;面试的时候…

高级IO select 多路转接实现思路

文章目录 select 函数fd_set 类型timeval 结构体select 函数的基本使用流程文件描述符就绪条件以select函数为中心实现多路转接的思路select 缺陷 select 函数 int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); selec…

PlantUML语法(全)及使用教程-时序图

目录 1. 参与者1.1、参与者说明1.2、背景色1.3、参与者顺序 2. 消息和箭头2.1、 文本对其方式2.2、响应信息显示在箭头下面2.3、箭头设置2.4、修改箭头颜色2.5、对消息排序 3. 页面标题、眉角、页脚4. 分割页面5. 生命线6. 填充区设置7. 注释8. 移除脚注9. 组合信息9.1、alt/el…

MySQL三大日志详细总结(redo log undo log binlog)

MySQL日志 包括事务日志&#xff08;redolog undolog&#xff09;慢查询日志&#xff0c;通用查询日志&#xff0c;二进制日志&#xff08;binlog&#xff09; 最为重要的就是binlog&#xff08;归档日志&#xff09;事务日志redolog&#xff08;重做日志&#xff09;undolog…

MySQL备份与恢复(重点)

MySQL备份与恢复&#xff08;重点&#xff09; 一、用户管理与权限管理 ☆ 用户管理 1、创建MySQL用户 注意&#xff1a;MySQL中不能单纯通过用户名来说明用户&#xff0c;必须要加上主机。如jack10.1.1.1 基本语法&#xff1a; mysql> create user 用户名被允许连接的主…

ssm+vue的仓库在线管理系统的设计与实现(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频&#xff1a; ssmvue的仓库在线管理系统的设计与实现&#xff08;有报告&#xff09;。Javaee项目&#xff0c;ssm vue前后端分离项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三…