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

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

文章转自:django中文网---Pycharm新手教程,只需要看这篇就够了

一、常用功能介绍

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
#网址:www.django.cn

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

将展开为:

<div id="page">

<div class="logo"></div>

<ul id="navigation">

<li><a href=""></a></li>

<li><a href=""></a></li>

<li><a href=""></a></li>

<li><a href=""></a></li>

<li><a href=""></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没关系)

Pycharm新手教程,只需要看这篇就够了的更多相关文章

  1. Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) JAVA日志的前世今生 .NET MVC采用SignalR更新在线用户数 C#多线程编程系列(五)- 使用任务并行库 C#多线程编程系列(三)- 线程同步 C#多线程编程系列(二)- 线程基础 C#多线程编程系列(一)- 简介

    Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 ...

  2. C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志

    C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...

  3. .NET Core实战项目之CMS 第二章 入门篇-快速入门ASP.NET Core看这篇就够了

    作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/9985451.html 本来这篇只是想简单介绍下ASP.NET Core MVC项目的(毕竟要照顾到很多新 ...

  4. net core体系-web应用程序-4asp.net core2.0 项目实战(CMS)-第二章 入门篇-快速入门ASP.NET Core看这篇就够了

    .NET Core实战项目之CMS 第二章 入门篇-快速入门ASP.NET Core看这篇就够了   原文链接:https://www.cnblogs.com/yilezhu/p/9985451.ht ...

  5. [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了

    [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 本文首发自:博客园 文章地址: https://www.cnblogs.com/yilezhu/p/ ...

  6. React入门看这篇就够了

    摘要: 很多值得了解的细节. 原文:React入门看这篇就够了 作者:Random Fundebug经授权转载,版权归原作者所有. React 背景介绍 React 入门实例教程 React 起源于 ...

  7. [转]React入门看这篇就够了

    摘要: 很多值得了解的细节. 原文:React入门看这篇就够了 作者:Random Fundebug经授权转载,版权归原作者所有. React 背景介绍 React 入门实例教程 React 起源于 ...

  8. ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了

    引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者 ...

  9. ExpandoObject与DynamicObject的使用 RabbitMQ与.net core(一)安装 RabbitMQ与.net core(二)Producer与Exchange ASP.NET Core 2.1 : 十五.图解路由(2.1 or earler) .NET Core中的一个接口多种实现的依赖注入与动态选择看这篇就够了

    ExpandoObject与DynamicObject的使用   using ImpromptuInterface; using System; using System.Dynamic; names ...

随机推荐

  1. 【转】Inter-eNB S1 切换

    本博客介绍Inter-eNB的S1切换的流程 当eNB收到测量报告,或是因为内部负荷分担等原因,触发了切换判决,进行eNB间小区间通过S1口的切换. 源eNB通过S1接口的 HANDOVER REQU ...

  2. DCloud-MUI:杂项

    ylbtech-DCloud-MUI:杂项 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   7.返回顶部   8.返回顶部   9.返回 ...

  3. ES6相关实用特性

    本文总结ECMAScript6相关实用特性 目录 let和const 箭头函数 class 对象字段 模板字符串 解构赋值 函数参数扩展 迭代器for...of 模块加载 map和weakmap se ...

  4. 2007.1.1 string.Format

    String.Format举例(C#) stringstr1 =string.Format("{0:N1}",56789); //result: 56,789.0 stringst ...

  5. 2015.3.31不使用debug/X86文件夹方式解决64/32位问题

    传统方法:在解决方案-配置管理器-新建X86平台可以解决32位兼容问题,但是Debug目录下会多出X86文件夹.不方便 另一种方法:在项目名称-属性-生成-目标平台-x86也能解决问题,而且不出现X8 ...

  6. 11-16网页基础--HTML

    网页制作部分主要讲解三大部分: 1.HTML    超文本标记语言( 全称:Hyper Text  Markup Language) 专门编辑静态网页 2.CSS      网页美化:是HTML控制的 ...

  7. bitcode编译错误

    xcode编译引用的静态库可能会出现编译错误: does not contain bitcode. You must rebuild it with bitcode enabled (Xcode se ...

  8. iter创建一个可以被迭代的对象

    #!/usr/bin/env python obj = iter([11,22,33,44]) #iter 创建一个可以被迭代的对象 print(obj) r1 = next(obj) print(r ...

  9. v8垃圾回收和js垃圾回收机制

    垃圾回收器是一把十足的双刃剑.好处是简化程序的内存管理,内存管理无需程序员来操作,由此也减少了长时间运转的程序的内存泄漏.然而无法预期的停顿,影响了交互体验.本文从 V8 (node.js runti ...

  10. linux 监控内存介绍

    一:系统监控:1.对cpu的监测:查看进程占用内存情况 top pid user PRI NI size RSS share stat 进程号 进程所属用户 优先级 优先级 进程所占空间 使用物理内存 ...