pycharm远程运行_pycharm打开远程项目

pycharm远程运行_pycharm打开远程项目视频见:https://www.bilibili.com/video/av54728208一、计算机系统组成cpu:处理指令(比如点击鼠标)和运算数据内存:存储cpu要处理的数据,从硬盘中读取,读取速度快,处理好后再存入硬盘二、Python介绍Python是时下最流行、最火爆的编程语言之一,具体原因如下:简单、易学,适应人群广泛免费、开源应用领域广泛备注:以下……

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

视频见: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 re

class EntityScore(object):
    @staticmethod
    def 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))

        ...

        # 统计准确率、召回率、F1
        precision = 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 json


class 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 connecting

Connected 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

在这里插入图片描述
注意:类内建议空一行,如果空两行,会自动变为顶格。

9 其它

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

标题

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/174973.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)
blank

相关推荐

  • 均方误差与方差的区别_平均数 方差 标准差

    均方误差与方差的区别_平均数 方差 标准差一、百度百科上方差是这样定义的:看这么一段文字可能有些绕,那就先从公式入手,对于一组随机变量或者统计数据,其期望值我们由E(X)表示,即随机变量或统计数据的均值,然后对各个数据与均值的差的平方求和,最后对它们再求期望值就得到了方差公式。这个公式描述了随机变量或统计数据与均值的偏离程度。二、方差与标准差之间的关系就比较简单了根号里的内容就是我们刚提到的那么问题来了,

  • 淘宝开源工具:Orztop

    淘宝开源工具:Orztop

  • densenet网络结构详解_网络dea模型

    densenet网络结构详解_网络dea模型网络基本结构 我们放大一下DenseBlockDenseBlock 上图中每一次的输入都是经过Channel-wiseconcatenation后的,如k0+k,k为growthrate。denseblock一个核心的点就是:每一层的输入来自前面所有层的输出。如下,H2的输入=最开始的输入 + H1的输出= k0+kH3的输入=最开始的输入 …

  • java跨境电商ERP源码「建议收藏」

    java跨境电商ERP源码「建议收藏」1订单管理本模块支持多平台订单自动下载同步以及多帐号多店铺订单管理,方便用户对销售进行科学、直观的分类管理。包括订单处理,包装验货,称重出库,智能交运,交运日志,快速拣货,快速发货等子模块。2商品管理(SKU)商品管理模块,提供对亚马逊店逊商品进行线下管理的功能,包括但不限于中文名称、英文名称,售价等相应管理3.采购管理采购管理主要对于商品采购、入库、及供应商的设置,并于商品细分,包括采购管理、入库管理和供应商管理模块。4.物流管理此模块主要提供用户设置速途未对接的物…

  • mysql窗口函数用法_mysql实现窗口函数

    mysql窗口函数用法_mysql实现窗口函数一,MySQl8.0窗口函数窗口函数适用场景:对分组统计结果中的每一条记录进行计算的场景下,使用窗口函数更好;可以跟Hive的对比着看:点我,特么的花了一晚上整理,没想到跟Hive的基本一致,还不因为好久没复习博客了,淦注意:mysql因为没有array数据结构,无法像Hive一样行列进行转换;1.1窗口函数分类MySQL从8.0版本开始支持窗口函数。窗口函数的作用类似于在查询中对数据进行分组,不同的是,分组操作会把分组的结果聚合成一条记录,而窗口函数是

  • Pychram引入conda环境[通俗易懂]

    Pychram引入conda环境[通俗易懂]Pychram引入conda环境一、前言考虑到:①pycharm比Spyder功能全面,②anaconda的环境配置方便,这两个因素,所以想要在pycharm上引入condaenvironment,充分利用Anaconda的库函数。二、导入步骤1.创建一个project,并在File栏中,点击settings…,进入设置界面2.在setting界面下,找到当前工程,并选中其中的PythonInterpreter3.点击右上角的齿轮图表4.在弹出的会话框中,选中Add…5.在Ad

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号