视频见:https://www.bilibili.com/video/av54728208
pycharm远程连接见:https://blog.csdn.net/lin_danny/article/details/82185023

1 前言

1.1 计算机系统组成

  • cpu:处理指令(比如点击鼠标)和运算数据
  • 内存:存储cpu要处理的数据,从硬盘中读取,读取速度快,处理好后再存入硬盘

1.2 Python介绍

Python是时下最流行、最火爆的编程语言之一,具体原因如下:
1、简单、易学,适应人群广泛

2、免费、开源
3、应用领域广泛

备注:以下知名框架均是Python语言开发。

  • Google开源机器学习框架: TensorFlow
  • 开源社区主推学习框架:Scikit-learn
  • 百度开源深度学习框架:Paddle

Python发展历史:https://baike.baidu.com/item/Python/407313?fr=aladdin

Python版本

Python 2.X
Python 3.X

  • Python 3.5
  • Python 3.6
  • Python 3.7

注意:课程讲解3.7。

总结:Python优点

  • 学习成本低
  • 开源
  • 适应人群广泛
  • 应用领域广泛

Python学习版本:3.7

2 解释器

2.1 解释器的作用

Python解释器作用:运行文件。相当于翻译官角色,在程序员编写的代码与计算机0,1之间翻译。

Python解释器种类

1、CPython,C语言开发的解释器 [官方],应用广泛的解释器。

2、IPython,基于CPython的一种交互式解释器。

3、其他解释器

  • PyPy,基于Python语言开发的解释器。
  • Jython,运行在 Java平台的解释器,直接把 Python代码编译成Java字节码执行。
  • IronPython,运行在微软 .Net平台上的Python解释器,可以直接把 Python代码编译成.Net的字节码。

课程中使用的解释器:CPython

2.2 下载与安装Python解释器

下载地址:https://www.python.org/downloads/release/python-372/
[单击上述链接] – 查找目标文件: Windows x86-64 executable installer – 单击即可下载。

安装Python解释器

双击可执行文件 — 勾选[pip] – [Next] – [勾选添加环境变量] – [Install],按提示操作即可。

总结:

  • 解释器的作用:运行文件
  • 解释器环境:先下载后安装

3 PyCharm基本设置

3.1 PyCharm的作用

PyCharm是一种 Python IDE(集成开发环境),带有一整套可以帮助用户在使用 Python语言开发时提高其效率的工具,内部集成的功能如下:

  • Project管理
  • 智能提示
  • 语法高亮
  • 代码跳转
  • 调试代码
  • 解释代码(解释器)
  • 框架和库

PythonCharm分为专业版(professional)和社区版(community),专业版可以远程连接服务器。

3.2 下载和安装

下载地址:http://www.jetbrains.com/pycharm/download/#section=windows

注意:这里选择 Community(社区版)下载,专业版是收费版本,社区版可以满足我们基础编程需求。

安装

双击安装包 – [运行 ] – [允许你应用更改设备 ]: [是] – [Next] – [选择安装位置] – [Next] – [Install] --[Finish]。

3.3 PyCharm基本使用

3.3.1 新建项目

打开PyCharm – [Create New Project] – 选择项目根目录和解释器版本 – [Create],即可完成新建一个项目。

3.3.2 新建文件

项目根目录或根目录内部任意位置 — 右键 – [New] – [Python File] – 输入文件名 – [OK]

如果是将来要上传到服务器的文件,那么文件名切记不能用中文。


3.3.3 运行文件

文件打开状态 – 空白位置 — 右键 – Run – 即可调出Pycharm的控制台输出程序结果。

3.4 PyCharm的基本设置

[file] – [Settings]/[Default Settings](设置)。

3.4.1 修改主题

[Appearance & Behavior] – [Appearance](界面外观)

  • Theme:修改主题
  • Font:修改主题字体
  • Size:修改主题字号

3.4.2 修改代码文字格式

[Editor] – [Font]

  • Font:修改字体
  • Size:修改字号
  • Line Spacing:修改行间距

3.4.3 修改解释器

[Project: 项目名称 ] – [Project Interpreter] – [设置图标] – [Add] – 浏览到目标解释器 – [OK] --[OK]

3.4.4 项目管理

3.4.4.1 打开项目

[File] – [Open] – 浏览选择目标项目根目录 – [OK] – 选择打开项目方式。

打开项目的方式共三种,分别如下:

1、This Window:覆盖当前项目,从而打开目标项目

2、New Window:在新窗口打开,则打开两次PyCharm,每个PyCharm负责一个项目。

3、Attach

3.4.4.2 关闭项目

[File] – [Close Project]/[Close Projects in current window]

3.4.4.3 默认路径注意事项

pycharm默认会把项目根目录添加到sys.path里面。

python import包时,要从sys.path里面的目录里去扫相应的包。

4 PyCharm应用

4.1 Debug

所谓bug,就是程序中的错误。如果程序有错误,需要程序员排查问题,纠正错误。

4.1.1 Debug工具

Debug工具是 PyCharm IDE中集成的用来调试程序的工具,在这里程序员可以查看程序的执行细节和流程或者调解bug。

Debug工具使用步骤:

  1. 打断点
  2. Debug调试

4.1.2 打断点

1、断点位置:目标要调试的代码块的第一行代码即可,即一个断点即可。

2、打断点的方法:单击目标代码的行号右侧空白位置。

4.1.3 Debug调试

打成功断点后,在文件内部任意位置 — 右键 – Debug’文件名 '— 即可调出Debug工具面板 – 单击Step Over/F8,即可按步执行代码,注意代码是运行到打断点的位置之前。

Debug输出面板分类

  • Debugger:显示变量和变量内容的细节
  • Console:输出内容

4.1.4 Debugger识别

4.1.4.1 列表
tags_actual = [['O', 'O', 'O', 'O', 'O', 'O', 'B-PER.NAM', 'I-PER.NAM', 'O', 'O', 'O', 'O', 'O', 'O', 'O'],  # 1个实体['O', 'B-PER.NAM', 'I-PER.NAM', 'I-PER.NAM', 'O', 'O', 'B-PER.NAM', 'I-PER.NAM', 'O', 'O']  # 2个实体,10个元素]

可以看出,tags_actual为双层列表,外层两个元素用0和1表示,里层10个元素用00-09表示。tags_predict为单层列表。每个列表最后一行都有一个len值。红色矩形框表示所属对象,这里tags_actual和tags_predict都是列表对象。

4.1.5 文件中只有一个类进行debug

例如metrics.py文件以及调用它的test_metrics.py文件。

metrics.py

import copy
import itertools
import reclass EntityScore(object):@staticmethoddef single_entity_score(tags_predict, tags_actual):assert isinstance(tags_predict[0], list) and isinstance(tags_actual[0], list)  # 确保是内层是个list# 2维的拍平到1维,便于计算tags_predict = list(itertools.chain(*tags_predict))tags_actual = list(itertools.chain(*tags_actual))...# 统计准确率、召回率、F1precision = float(correct_num) / predict_num if predict_num else 0.recall = float(correct_num) / actual_num if actual_num else 0.f1 = 2 * precision * recall / (precision + recall) if precision + recall else 0.return precision, recall, f1

test_metrics.py

import unittest
from metrics import EntityScore
import jsonclass MyTestCase(unittest.TestCase):def test_single_entity_score(self):tags_actual = [['O', 'O', 'O', 'O', 'O', 'O', 'B-PER.NAM', 'I-PER.NAM', 'O', 'O', 'O', 'O', 'O', 'O', 'O'],  # 1个实体['O', 'B-PER.NAM', 'I-PER.NAM', 'I-PER.NAM', 'O', 'O', 'B-PER.NAM', 'I-PER.NAM', 'O', 'O']  # 2个实体]tags_predict = [['O', 'O', 'O', 'O', 'O', 'O', 'B-PER.NAM', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O'],  # 错1个['O', 'B-PER.NAM', 'I-PER.NAM', 'I-PER.NAM', 'O', 'O', 'O', 'O', 'O', 'O']  # 漏1个]r = EntityScore.single_entity_score(tags_predict, tags_actual)print(r)if __name__ == '__main__':unittest.main()

方法一:

metrics.py类中要调试的位置设置断点:

test_metrics.py运行程序:

方法二:设置断点,选在导入当前类的函数文件,进行debug

4.1.6 相对路径的调用从主函数设置断点开始

4.2 Pycharm交互式开发(console)

优点:可以不用 print 直接输出,加 print 也可以。

4.3 只运行文件中的某个函数或者类

点击函数一侧run。

4.4 螺旋标志


表示重写方法,这个是继承torch的dataset,需要重写那俩方法。

4.5 查看代码整体结构

pycharm左侧structures。

4.6 Pycharm在项目中搜索字符串

问题:使用Pycharm,有时需要查找某个字符串或者文本在项目中的哪个位置(哪个文件中)出现,比较常见的是在Debug时,根据logging信息,查找打印该log的代码在哪里,此时怎么查找呢?难道要凭猜测或者逐个文件找吗?No!

解决办法:利用Pycharm的Find in path功能进行快速定位搜索,快捷键是Ctr+Shift+f,或者Edit-->Find-->Find in path

参考链接:https://blog.csdn.net/huludan/article/details/108410503

5 pycharm远程连接

5.1 Pycharm远程连接服务器

1、首先要打开/新建项目,这个项目需要和本地目录一致。

2、远程环境设置:Tools → \to → Deployment → \to → Configration

远程连接正常:

在Mapping下,选择连接windows下的项目路径中的代码和服务器上代码相连,表示已经把本地的代码和服务器代码连接上了。

5.2 配置远程Python解释器

1、将Python解释器设置为远程服务器上的,File → \to → Settings… → \to → Project: 项目名称 → \to → Project Interpreter,Path mapping:如果不想自定义路径,选择好解释器后系统会自动填一个临时路径文件夹。

2、选择SSH Interpreter,填写服务器的IP地址,用户名Username,下一步Next。
输入密码,下一步next

3、设置远程服务器地址,django2.2是我创建的新环境

如果在公共的conda下,地址在/opt/conda/envs/中。

5.3 pycharm本地远端互传文件

两地文件互传

从本地上传到远端:上传代码,使得本地代码和服务器代码保持同步,直至右下角进度条完成


从远端下载到本地

5.4 问题描述

参考链接:https://blog.csdn.net/t18438605018/article/details/110871429

在用ssh连接远程服务器时,出现以下错误

Warning: remote host identification has changed!IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the host key has just been changed.
The fingerprint for the ssh-rsa key sent by the remote host is
...
Please contact your system administrator or add correct host key in C:\Users\...\.ssh\known_hosts to get rid of this message.

谷歌翻译:
警告:远程主机标识已更改!

有人可能正在做一些令人讨厌的事情!
现在有人可能正在窃听你(中间人攻击)!
也可能是主机密钥刚刚更改。
远程主机发送的 ssh-rsa 密钥的指纹为
。。。。
请联系您的系统管理员或在 C:\Users\...\.ssh\known_hosts 中添加正确的主机密钥以消除此消息。

原因分析

要连接的服务器重装了系统。用户和密码都是管理员后来分配的。是不是记录了以前的连接。所以根据提示,删除 C:\Users\...\.ssh\known_hosts 文件。

解决办法

找到该文件,删除该文件。重新进行ssh连接即可!

5.5 Pycharm 开启远程Terminal

开启Pycharm 的远程SSH Terminal 后,在编写python程序是就可以同时使用IDE和Shell编程了。

开启方式:在Pycharm界面依次选择Tools->Start SSH Session 即可,具体操作如下图所示。

6 pycharm快捷键

快捷键 功能
Alt + Enter 万能键,自动导入包
Ctrl + ? 添加注释
选中代码+tab 缩进
Ctrl + p 参数提示
Shift + f6 重命名,重构
Shift + 选中导入包名称 查看包信息
按ctrl键,鼠标左键点击函数名 可以跳转到该函数实现位置
ctrl+shift± 收起全部的注释

7 pycharm其它操作

7.1 替换变量名

替换变量名:选择变量名 → \to → 右键 → \to → Refactor → \to → Rename

7.2 函数复用

选择指定内容,自动抽象出一个函数,实现函数复用:

8 报错

8.1 远程pycharm的console无法运行

下述“当前项目文件console”与“在debug时console”之间的区别:

8.1.1 当前项目文件console无法运行

查看File\Settings...\Build,Execution,Deployment\Console\Pythton Console的工作目录是否对应当前工作目录,设置好后重启。

8.1.2 在debug时console无法运行

在debug时点击console就会打开一个命令窗,这个命令窗的环境与当前代码调试的环境是完全一致的,可以在这个命令窗对变量进行更改或者查看。

在debug时console无法运行,报错如下:

pydev debugger: process 24750 is connectingConnected to pydev debugger (build 192.6817.19)
pydev debugger: warning: trying to add breakpoint to file that does not exist: /home/ly2/pytorch_base_code/g:/compression_pycharm/pytorch-slimming-master/prune.py (will have no effect)

解决方法:debug之后,点击菜单栏console,单击左下角python小图标即可。

可查看当前变量值

8.2 debug时显示collecting data并报错Timeout waiting for response

在用PyCharm进行Python代码调试查看具体变量时,会随机遇到一直显示collecting data,到最后报错Timeout waiting for response,在界面中看不到变量内部的内容,如下图所示:

解决办法

在PyCharm,打开Setting界面,在如下设置项中勾选“Gevent compatible”即可,如下图所示:

8.3 Remote file 文件名 <string> is mapped pycharm

解决方法:在函数名处大断点,点击step into,之后一直按step over即可。

8.4 FileNotFoundError

方法:运行的文件执行路径改成项目目录

报错:FileNotFoundError: [Errno 2] No such file or directory: ‘tests/testdata/segdata’

8.5 TabError:空格与tab混用报错

当把代码从别处复制进来PyCharm,然后运行报错。

报错:TabError: inconsistent use of tabs and spaces in indentation

这个报错的意思是说IDE分不清tab和空格,说明你的代码中混用了tab和空格。

传统的方式是找出代码中报错的地方,然后修改。

这种方法可以,但是效率太低。推荐一种解决方法:格式化代码!

具体操作是:Code -->Reformat Code


注意:类内建议空一行,如果空两行,会自动变为顶格。

  • 参考链接:https://blog.csdn.net/qq_34446614/article/details/91973139

9 其它

三引号自动生成注释:https://www.csdn.net/tags/NtzaAg2sNDM0MzQtYmxvZwO0O0OO0O0O.html

标题

pycharm基本使用与远程连接相关推荐

  1. 学习笔记(十二)——虚拟机安装和pycharm远程连接Ubuntu

    文章目录 虚拟机 安装 Ubuntu 安装 pycharm远程连接Ubuntu 虚拟机设置端口转发 pycharm设置 设置自动上传 手动上传 虚拟机 虚拟机(Virtual Machine)指通过软 ...

  2. 【远程操控】Pycharm远程连接服务器之本地显示独立的plot窗口

    文章目录 前言 一.软件信息 二.操作步骤 1. 设置Putty 2. 设置Pycharm 3. 安装Xming 前言 在配置Pycharm远程连接服务器后,虽然可以正常运行代码,但是发现在远程操控服 ...

  3. 【远程操控】Pycharm配置远程连接服务器

    文章目录 一.引言 1. 使用场景 2. 系统及版本信息 二.配置连接 1. 设置远程连接,配置Deployment 2. 配置远程python解释器 一.引言 1. 使用场景 自己的笔记本没有GPU ...

  4. Pycharm远程连接服务器,操作代码

    1. Pycharm连接远程服务器 1.1 进入配置页面 Pycharm菜单栏,如下图所示,依次点击 Tools -> Deployment -> Configration- 1.2 配置 ...

  5. 【docker】【pycharm】pycharm配置docker远程连接

    [docker][pycharm]pycharm配置docker远程连接 配置ssh Pycharm配置 拉取代码 这次是参考师兄给的文档 首先进入docker docker start xxxxx ...

  6. pycharm远程连接服务器中的docker容器的配置

    pycharm远程连接服务器中的docker容器 第一步:服务器中安装docker以及docker容器的运行 1.1docker的安装 docker的安装可以参照阿里云的教程, 阿里云安装教程,包含d ...

  7. 【配置】Pycharm远程连接服务器、配置SSH、配置py环境

    在这里我将配置python.tensorflow到指定服务器,前提是需要知道远程服务器提供的ip.port.账号.密码. 文章目录 1 配置SSH 2 新建项目 3 设置远程连接配置 4 配置远程服务 ...

  8. pycharm远程连接服务器完整教程

    pycharm远程连接服务器完整教程 前言: 整理出来供大家参考~ 第一步: 只有pycharm专业版才能远程连接服务器. 专业版安装教程(2020.1.3版本及以下,最好去用教育邮箱申请教育版) 第 ...

  9. Pycharm远程连接服务器来跑代码

    目录 一.进入pycharm 二.步骤 1.开始 2.接下来输入你的密码 3.选择所需要的虚拟环境 4.完成一半啦 5.完成 一.进入pycharm 二.步骤 1.开始 点击pycharm左上角的fi ...

最新文章

  1. html5与原生混合模式开发,HTML5与混合模式开发与Native的关系及其实现[张振华.Jack].pdf...
  2. ylb:SQL 表的高级查询-多表连接和子查询
  3. %3c php foreach%3e,PHP 数组函数-数组排序
  4. Android开发推荐资料大合集
  5. MsSql.RestApi - 构建ASP.NET REST API的最简单方法
  6. 简单python脚本实例-终于晓得python入门脚本实例
  7. audio_policy.conf说明(翻译)
  8. ORACLE -- ArcSDE Lock request conflicts with an established lock
  9. 【算法笔记】求给定序列的第k大(权值线段树/直接离散化)
  10. 含本土测量软件的Q-Vision+Kvaser CAN/CAN FD/LIN总线解决方案
  11. Excel操作:使用Excel制作甘特图
  12. 汇编语言写c51计数器到60,HTML技巧汇编
  13. 《数字图像处理》第4讲——线性运算与空间图像增强
  14. druid字段级_Druid配置
  15. 谷歌将投资10亿美元在旧金山湾区新建约2万套住房
  16. 计算机导论题目2020,计算机网络论文题目_
  17. oracle 表空间转换,Oracle表空间数据文件移动的方法
  18. 计算机网络——应用层之电子邮件(E-mail)
  19. 文件下载重命名(跨域)
  20. 绝对布局(AbsoluteLayout)的简单使用

热门文章

  1. 22、scratch教程-自制积木
  2. zyplayer下载?全网播放器ZY Player 2.6.3中文版附源文件
  3. 视频教程-Layer 弹窗入门-jQuery
  4. LivePlayer H5直播/点播播放器安装与使用
  5. ios 聚合数据接口调用demo :菜谱大全
  6. Putty连接阿里云ECS服务器
  7. TeeChart用法
  8. 如何在平凡的工作中提升自己的SEO营销优化力?
  9. 看板娘demo,学会了可以方便的给自己的博客添加一个看板娘
  10. 用户运营的核心本质是什么?分级、分类、分阶段