Pycharm使用技巧(转载)

Pycharm使用技巧(转载)

 

转载自:http://www.cnblogs.com/cloudtj/articles/5980666.html

 

pycharm使用技巧

https://python.freelycode.com/contribution/detail/29
https://python.freelycode.com/contribution/detail/30
https://python.freelycode.com/contribution/detail/31

 

-----------------------------------------------------------------------------

破解

https://mp.weixin.qq.com/s/giBGvL7EQeuEbSKjrCISpQ
https://www.lookdiv.com/index/index/indexcodeindex.html

破解注册码:http://idea.lanyus.com/

https://www.cnblogs.com/mosson/p/10248395.html

f

-----------------------------------------------------------------------------


0.先安装python解释器
Linux不需要安装,默认自带,Windows需要安装,当前最新版本是2.7和3.6
下载地址:https://www.python.org/downloads/windows/

https://www.python.org/downloads/release/python-2713/

 

默认安装位置:C:\Python27\

记得把环境变量勾选上

 --------------------------------------------------------------------------------------------------------

1.在Pycharm下为你的Python项目配置Python解释器

View-》Toolbar和Tool Buttons


Project:当前项目名>Project Interpreter>add Local

或者

file->setting

 

Project :pyproject1-》Project Interpreter

如果当前电脑安装了3.6和2.7两个python,如果项目是用3.6来编写的,就要选择3.6作为解析器

 

 

----------------------------------------------------------------------------------------------------
2.在Pycharm下创建Python文件、Python模块
File>New>Python File
File>New>Python Package

-----------------------------------------------------------------------------------------------
3.使用Pycharm安装Python第三方模块
Project:当前项目名>Project Interpreter>点击右侧绿色小加号

PyPI - the Python Package Index --python包索引
pip install

第三方模块安装位置:C:\Python27\Lib\site-packages

Linux:

/usr/lib/python2.6/site-packages
/usr/lib64/python2.6/site-packages/

 

alt+enter自动安装第三方包

 

搜索并安装第三方模块

选择模块的版本

仓库来源,实际连接的是:https://pypi.python.org/simple/

从网上下载,电脑必须能上网

安装位置:C:\Python27\Lib\site-packages

---------------------------------------------------------------------------------------------------

4.Pycharm基本设置,例如不使用tab、tab=4空格、字体、字体颜色、主题、脚本头设置、显示行号等。如何导出和导入自定义设置。

不使用tab、tab=4空格:Editor -> Code Style -> Python
缩进四个空格,不管在哪个操作系统,哪个IDE都不会有问题,tab可能在其他操作系统缩进会有问题,tab在python3会报错,在python2不会报错

use tab character和smart tabs的勾去掉,然后下面是4 ,4, 8


字体、字体颜色:

Appearance & Behavior ->Appearance-> Theme : Darcula

Editor -> Colors & Fonts ->Font
Primary font:Courier New ,Size:14

 

 

关闭自动更新:Appearance & Behavior  ->System Settings ->Updates


脚本头设置:Editor ->File and Code Templates ->Python Script 注:其他类似

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Author : huazai
# @Time : ${DATE} ${TIME}
# @File : ${NAME}.py
# @Description :
# @comment :

 

 

 

显示行号:Editor -> General  -> Appearance -> Show line numbers  注:2016.2默认显示行号


右侧竖线是PEP8的代码规范,提示一行不要超过120个字符


导出、导入你自定义的配置

导出的配置里包括你安装了哪些插件

File -> Export Settings、Import Settings

 f

pycharm2021

导出、导入你自定义的配置: File -》Manage IDE Settings-》Export Settings、Import Settings

 

 f

用xml文件保存配置

 

 

-------------------------------------------------------------------------------------------------------------
5.常用快捷键,例如复制当前行、删除当前行、批量注释、缩进、查找和替换。

常用快捷键的查询和配置:Keymap
Ctrl + J:插入常用代码(列表重写、元组重写、集合重写、字典重写、if __name__ == '__main__':)  !!!!!!!!!!!
Ctrl + D:Ctrl + C和Ctrl + V的合体
Ctrl + C:复制当前行
Ctrl + X:剪切当前行
Shift + Enter:快速换行
Ctrl + /:快速注释(选中多行后可以批量注释)
Ctrl + F:查找当前文件的内容
Ctrl+Shift+F:查找整个项目的内容
Shift+Shift:查找所有python代码,所有内置库和第三方库和自己的项目
Ctrl + R:替换
Ctrl + Alt +L:格式化代码!!!!!!
Ctrl+Enter 补全

Ctrl+Shift+Alt:垂直选择列!!!!!

Ctrl + P  :参数信息(在方法中调用参数) 
Alt+Enter  自动添加包    !!!!!!!!!
Ctrl+t SVN更新
Ctrl+k SVN提交
Tab:缩进当前行(选中多行后可以批量缩进)!!!!!!!!
Shift + Tab:取消缩进(选中多行后可以批量取消缩进)


调试
F7:进入调用函数
F8:下一步
F9:恢复程序,退出调试模式

代码行实时显示信息

 

keymap更改快捷键

 

格式化代码

将QQ的锁定QQ改为ctrl+alt+home

在pycharm里面按ctrl+a 选中全部代码

ctrl+alt+l

 

执行选中代码

垂直/水平拆分窗口

--------------------------------------------------------------------------------------------------------------------
6.Pycharm安装插件,例如Markdown support、数据库支持插件等。
Plugins -> Browse repositories -> 搜索‘markdown support’ -> install
右上角View有三个选项可选,一般我们都用中间那个左侧编写,右侧实时预览

 

 

-----------------------------------------------------------------------------------------------------
7.版本控制

支持本地版本管理(pycharm自带)和版本管理系统,VCS:version control system

查看修改记录,回滚记录, Local History能够查看文件修改前后的对比

 

 

 

集成svn

-----------------------------------------------------------------------------------------------------------------

8.常用操作指南。例如复制文件路径、在文件管理器中打开、快速定位、查看模块结构视图、tab批量换space、TODO的使用、Debug的使用。
复制文件路径:左侧文件列表右键选中的文件  -> Copy Path
在文件管理器中打开:右键选中的文件  -> 往下找到Show In Explorer


快速定位:按住Ctrl +鼠标左键点击 ,点击在源文件中展开类,函数,方法等的定义
查看结构:IDE左侧边栏Structure 查看当前项目的结构
tab批量换space:Edit  ->  Convert Indents

TODO的使用:# TODO 将要补充的代码和文本
Debug设置断点,直接点击行号与代码之间的空白处即可设置断点
Tab页上右键 -> Move Right(Down),把当前Tab页移到窗口右边(下边),方便对比


IDE右下角能看到一些有用的信息,光标当前在第几行的第几个字符、当前回车换行、当前编码类型、当前缩进方式、当前所用解释器、当前所在的父目录、当前Git分支


IDE右侧边栏  ->  Database

 

--------------------------------------------------------------------------------------
9.去掉烦人的波浪线
单独一行的注释:#+1空格+注释内容
代码后跟着的注释:2空格+#+1空格+注释内容
保持良好的统一的编程风格是十分重要的。
Google上面有很多关于各种语言的编程规范指导,Python也有自己的一些编程规范,
PyCharm也会按一定的规范(比如PEP8)来检查编辑器中的代码。
这里的编程风格有代码编写格式层面的也有代码逻辑组织层面的。
https://github.com/iwhgao/zh-google-styleguide/blob/master/google-python-styleguide/python_language_rules.rst
https://github.com/iwhgao/zh-google-styleguide/blob/master/google-python-styleguide/python_style_rules.rst

 

黄色波浪色不合规范

绿色波浪线符合规范

 

示例

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#__author__ = "huazai"
"""
pycharm使用指南
Date:2016.08.12
"""

def test(num)
    """
    test function 
    """
    for i in range(num):   # 代码后面的注释
        j=i+1
        if j%2 ==0
            print j
    # 单独一行注释
    else:
        print "The end"
    
if __name__=="__main__":
    test(10)

----------------------------------------------------------------------------------------
10.SSH Terminal: Default encoding:UTF8
Settings   ->   Tools   ->   SSH Terminal    ->   最后一行Default encoding:选择UTF-8

 

 

 


10.给脚本传入参数

 Run -》edit configuration-》script parameters  输入参数

参数之间用空格 隔开

 

 

如果不用pycharm,那么在cmd也就是终端Terminal下要自己输入参数

 


https://www.jb51.net/article/255031.htm
Pycharm中运行程序在Python console中执行,不是直接Run
1、进入修改页面
2、复选框勾选
Pycharm中的Python console用法,交互模式

f

 



f

 

f


Terminal叫做终端,SSH Terminal ,连接Linux远程终端,即命令行模式(命令行模式与系统的CMD(命令提示符)一样,可以运行各种系统命令);

Python Console叫做Python控制台,即Python交互模式(Python交互模式主要有两种:CPython用>>>作为提示符,而 IPython用In [序号]:作为提示符,jupyter note book)。
Python交互式模式可以直接输入代码,然后执行,并立刻得到结果,因此Python交互模式主要是为了调试Python代码用的。



import pdb
pdb.set_trace()
在哪里加上这句话,程序运行到那里就会暂停,相当于加断点

 

 


11.安装插件

settings-》plugins-》browser repositorys

f

 

f

f

 

管理mongodb的插件

 


12.代码测试

Pycharm支持代码测试,你可以:
创建测试代码
自定义测试参数或配置
运行测试代码
导出测试结果

Pycharm支持所有主流的Python测试框架:
Unittest
Doctest
Nosetest
py.test

 

首先在settings|Tools|Python Integrated Tools中选择default testsrunner 为unittest,如下图所示:

然后在我们前面的Car.py文件的Car类的代码处,右键选择Go To,再选择Test(或者直接Ctrl+Shift+T),如下图所示:

这样会弹出一个选择窗口:

选择create New Test,再选择test_accelerate和test_brake,点击Ok,如下所示:

Pycharm会自动生成一个新的名为test_car.py的测试脚本,如下图 所示:

如果运行该脚本Run ‘Unittest in test_car’,默认会得到失败的结果,如下图:

如何编写单元测试,不是本文的内容,我们假设已经有了下面的测试代码:

import unittest

from Car import Car


class TestCar(unittest.TestCase):
      def setUp(self):
          self.car = Car()


class TestInit(TestCar):
      def test_initial_speed(self):
          self.assertEqual(self.car.speed, 0)

      def test_initial_odometer(self):
          self.assertEqual(self.car.odometer, 0)

      def test_initial_time(self):
          self.assertEqual(self.car.time, 0)


class TestAccelerate(TestCar):
      def test_accelerate_from_zero(self):
          self.car.accelerate()
          self.assertEqual(self.car.speed, 5)

      def test_multiple_accelerates(self):
          for _ in range(3):
            self.car.accelerate()
          self.assertEqual(self.car.speed, 15)


class TestBrake(TestCar):
       def test_brake_once(self):
           self.car.accelerate()
           self.car.brake()
           self.assertEqual(self.car.speed, 0)

       def test_multiple_brakes(self):
            for _ in range(5):
                self.car.accelerate()
            for _ in range(3):
                self.car.brake()
            self.assertEqual(self.car.speed, 10)

       def test_should_not_allow_negative_speed(self):
           self.car.brake()
           self.assertEqual(self.car.speed, 0)

       def test_multiple_brakes_at_zero(self):
           for _ in range(3):
              self.car.brake()
              self.assertEqual(self.car.speed, 0)

现在,在脚本的最顶处,右键运行测试程序,可以看到有一些测试通过了:

Pycharm可以自动运行测试代码,你只需要做两件事:
点击运行工具栏中的Toggle(绿色三角箭头下的第二个,两个灰框,有循环箭头的图标),激活自动测试功能
点击工具栏中的蓝色齿轮图标,选择Set Autotest Delay,然后选择延迟时间。
这样,每当你对代码修改后,在规定的延迟时间后,都会自动运行测试代码,如下图所示:

 

pycharm测试工具

C:\Program Files\JetBrains\PyCharm 2017.2.4\helpers\pycharm\_jb_unittest_runner.py

 

 

 


部署代码到远程服务器(远程同步(上传,下载,同步),远程调试)

pycharm版本:2018.3

远程机器Python:Python2.7.5

远程机器系统:centos7.5

有两种方法

1、在新建project的时候,选择远程python解释器,选择好远程python解释器之后会弹出设置同步代码路径的界面,第一种方法基本不用,只用第二种
2、已经建好project,选择远程python解释器和远程部署设置

两种方法都会在本地保留代码,也就是本地一份代码,远程一份代码

 

 

第二种方法

添加远程py解释器.

f

这里一定要选择new  server  configuration,而不是existing server  configuration

existing server  configuration是之前建过远程部署,然后无论选择move  this server  to IDE  settings还是create this server  to IDE  settings都会失败,无法远程调试,所以千万不能预先建远程部署

 

f

如果能连上远程机器,会自动识别远程机器的Python可执行文件,如果有多个Python解释器,需要自己按需选择

远程机器的同步目录会自动设置在/tmp/目录下,项目文件夹名的数字是随机的

不要勾选自动同步本机项目文件到远程机器

 自动读取远程机器的Python解释器安装的包

f

在部署配置界面,会自动帮你配置好远程机器的部署方式sftp,部署路径

 

f

自动设置好映射路径

部署路径 跟 添加解释器那个界面的 sync folders一致

local path,默认显示本项目所在本地路径

deployment path,设置代码同步到远程机器的哪个目录路径下,如果没有该路径则pycharm会自动帮你新建

web path ,不需要改,默认即可

 

实际上映射路径是: connecttion选项卡里的root path + mappings选项卡里的deployment path on server 'sftp连接名'
如果设置了connecttion选项卡里的root path 是/data/, mappings选项卡里的deployment path on server 'sftp连接名'是/data/
那么两个选项卡加起来就会报错,变成/data/data/ ,实际上用户要的是/data,那么connecttion选项卡里的root path 不用改它,保持/根分区
mappings选项卡里的deployment path on server 'sftp连接名'里写/data, ,表示/data是在connecttion选项卡里的root path 的路径下的也就是根分区路径下

f

要调试哪个项目文件,就把那个文件上传到远程机器,右键-》deployment-》upload to...

 

f

选择正确的远程机器

f

 

f

这时候可以右键-》直接运行/调试那个项目文件

f

一旦运行/调试了该文件,pycharm会自动生成该文件的运行配置,而且在运行/调试配置里面自动选择远程机器的py解释器

f

f

完成,后面的操作跟本机的调试/运行无啥区别,修改了本机的项目文件每次记得手动同步到远程机器再运行,反正按情况考虑是否需要勾选自动同步到远程机器

tools-》deployment-》options

 

f

 

 

f

 


 

 

project

打开文件夹名就是project名,所以文件夹名要起好,在创建Django的project的时候不能用路径名!!

 

pycharm只有project概念,没有solution概念
一个project下面可以有多个content root,content root就是一个文件夹,一个content root一般有一个main.py,
main.py里面有if __name__ == '__main__': 
如果一个文件夹不是content root,那么无法加载__init__.py文件

 

http://www.jetbrains.com/help/pycharm/2017.1/content-root.html
http://www.jetbrains.com/help/pycharm/2017.1/configuring-content-roots.html

 

一个project下面可以有多个module,module就是一个文件夹,module不需要main.py


1、加多个content root(不建议使用这种)

整个project 只有一个module,这个module有两个content root

 

f

f

f

f

f


2、加多个module(建议使用这种)

整个project 有两个module,每个module是单独一个content root

f

f

 

f

 

f

f

f

f

3、新建project时候,直接在文件夹根目录导入

这种方法不可行

f

f

f

 

f

如果是新建项目

1、先建一个项目文件夹

2、选择:create new project,然后选中新建的文件夹

3、选择pure python项目,然后创建

4、content root就是school项目本身

f

5、然后在项目文件夹下新建文件,模块文件夹等

 

f

6、加入其它module

f

新建项目的时候

f

打开项目文件夹的时候

f

python包

f

因为content root的关系,我们不能把项目根目录文件夹作为base directory,只能把根目录里面的某个module作为base directory,
所以无论是新建一个项目,还是打开一个项目,都只能
1、在新建时候选择项目根目录里的某个module来新建一个项目
2、打开时候,也是只能打开项目根目录里的某个module

而项目名称就是根目录里的某个module的文件夹名称作为项目名称

f



kite 增强pycharm自动完成功能

集成AI 机器学习,加速开发者开发速度

https://kite.com/

 





I'm not a GPT at all. I'm CodeGeeX, a code generation model jointly trained by Tsinghua University KEG Lab and Zhipu AI Company in 2023.
My job is to provide appropriate answers and support to users' questions and requests.

CodeGeeX
清华大学和智谱AI公司开发

 

f

 

f

 

f

f

 

 

 


 

打开多个pycharm实例

pycharm进程至此至终只有一个exe,在任务管理器里看

new window

File -> open…选择最近打开过的项目

 

弹窗提示 就选 New Window

 两个pycharm窗口完全独立,svn这些功能不受影响

 


 

https://blog.csdn.net/qq_39148947/article/details/82594824
pycharm Unresolved attribute reference 'objects' for class 问题

这是Cpython编译器的问题,一般不影响代码的顺利执行,就不用管它

 


 

pycharm下用git提交代码并做下面的检查和优化
流程:代码格式化-》lint规则检查-》import优化-》清理unused代码-》GPG git签名

 
新一代 Python Linter 工具 Ruff
https://zhuanlan.zhihu.com/p/595037918

 


 

PyCharm Professional Edition包含对本地JupyterNotebook 的支持,但是 还不支持远程JupyterNotebook 和 JetBrains新出的DataSpell 的其他功能
DataSpell 没有 Web 开发功能

DataSpell 是2021年推出的专为数据科学定制的IDE

 


 

 数据科学

PyCharm 设置SciView工具窗口的方法
1、下载安装好PyCharm 专业版后打开或者新建一个Python项目,找到View导航栏
在Tool Windows下可以找到SciView按钮,但是每次打开PyCharm都得点击一次,比较麻烦。
你可以看到View下面有个Scientific Mode,勾选上后,SciView就会在右侧导航栏里出现。

 


2、如果不想matplotlib在SciView窗口出现,可以在Settings | Tools | Python Scientific | Show plots in toolwindow去掉勾选就可以了
注意:没有勾选Scientific Mode,在Settings| Tools |下面是找不到Python Scientific。


如果加了多个python包源,那么搜索python包时候,会搜索多个python包源

 

 

 


pycharm里新建Django项目

Django项目依赖的虚拟环境,会复制父python解释器,这个base 解释器不能删除!!!

否则,依赖这个base 解释器的所有虚拟环境都不能运行!!!

 


阅读器模式不会检查语法问题

 

 

 

 

 

 

f

posted @ 2017-02-06 10:20  桦仔  阅读(7007)  评论(0编辑  收藏  举报