VScode(Python)使用ssh远程开发(Linux系统树莓派)时,配置falke8和yapf总结避坑!最详细,一步到位!

        写在前面:在Windows系统下使用VScode时可以很舒服的使用flake8和yapf,但是在ssh远程开发树莓派时,我却用不了,总是出现问题。当时我就开始了漫长的探索求知之路。中间也请教过许多大佬,但是他们就讲“能用不就行了,那么纠结干啥?”。确实够用,但有问题摆在面前的时候,不解决掉它总是感觉不得劲。还在我比较“闲”,也好在我比较轴,终于得偿所愿。(可能这对大神而言,是个微不足道的问题,哈哈哈大神飘过就好。在此仅愿能够对需要的朋友有所帮助)

        一、所需材料

        1、Linux环境(树莓派)下拥有flake8和yapf

        2、VScode在ssh下的拓展中安装flake8和yapf插件

        二、Linux环境下载flake8和yapf

        写在前面,为什么之前我一直不成功呢?是我偶然间发现,flake8和yapf的插件对VScode而言对python解释器的版本有要求的,如下图所示。而我的树莓派python版本是3.7,这是我一直没有注意到的。

        可以通过以下指令查看树莓派python指令:

#查看python2
python --version
#查看python3
python3 --version

       2.1 更新Linux环境下的python解释器(3.8以上可以跳过)

        下面来升级树莓派python版本,这里我参考的是树莓派安装python3.9以及pip换源 这个大佬的方式,实际用过,真的很好,在此致敬。(我Windows下面使用的是3.9.12,所以我在树莓派升级的是3.9.12)

        1、更新

sudo apt update

        2、安装编译python需要的环境

sudo apt install -y build-essential zlib1g-dev \
libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev \
libreadline-dev libffi-dev curl libbz2-dev

        3、下载python源码

wget \
https://www.python.org/ftp/python/3.9.12/Python-3.9.12.tgz

        值得一提的是,在树莓派下载通常很慢,大家可以在电脑下载好之后拷贝到树莓派内存卡上,或者通过VNC进行文件传输。 在此要提一下,我们需要下载Linux下的python源码,具体官网连接放在这:python源码下载Linux系统

         使用指令下载的话,文件在pi目录下(如果是电脑下载的话,也将文件拷到这个目录下)

        4、解压文件

        可以通过ls指令查看安装包状态

        解压指令:

tar xvf Python-3.9.12.tgz

        5、进入解压的python-3.9.12目录,进行配置

#进入目录
cd Python-3.9.12


#配置
./configure --enable-optimizations

        6、采用四核来编译(这一步较久,大概30分钟左右)

make -j4

         7、安装

sudo make install

         8、查看当前软链接指向的python版本

ls /usr/bin/python -l

        9、删除原来的软连接

sudo rm -f /usr/bin/python 

        10、在/usr/bin/目录创建软连接 python,定向/usr/local/bin/python3.9 

sudo ln -s /usr/local/bin/python3.9 /usr/bin/python

         11、检查python版本是否是3.9

python --version

        2.2 下载flake8和yapf 

        如果在升级python解释器之前下载了flake8和yapf,那当你升级完python解释器之后,无法使用常规的pip uninstall指令进行卸载了,可以通过以下指令删除:

#删除flake8
rm -rf /home/pi/.local/bin/flake8
#删除yapf
rm -rf /home/pi/.local/bin/yapf

        1、下载flake8

pip3 install --upgrade flake8

        2、检查是否下载成功

pip list
#成功的话,应该会反馈出flake8

        3、下载yapf

        可以使用同样方法去检查是否下载成功

pip3 install --upgrade yapf

         至此,树莓派上所有的任务都已经完成了

        三、VScode上ssh的配置

        3.1 下载拓展

        这个地方就不说了,和Windows下一样,如下所示:

        3.2 配置ssh的settings.json

         这个配置和Windows基本上一样,注意,千万不要在配置那边乱勾选,我就是乱勾选,导致一开始不能用(就是我注释掉的那部分),配置如下:

    "python.linting.flake8Enabled": true,
    "python.formatting.provider": "yapf",
    "python.linting.flake8Args": [
        "--max-line-length=248"
    ],
    "python.linting.pylintEnabled": false,

 

        至此,终于可用啦!!!效果如下:

        四、使用方法 

        1、保存的时候,便可以检错,以及自动格式化代码

        2、选中代码,右键,使用Format Document,可以格式化代码

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Windows10/11配置WSL(Ubuntu)环境

文章目录 WSL介绍WSL部署扩展:辅助工具Windosw Terminal安装下载 WSL介绍 传统方式获取Linux操作系统,是安装完整的虚拟机及镜像环境,例如虚拟机VMware 而使用WSL,可以以非常轻量化的方式,得到Linux系统环境 它无需单独虚拟一套硬…

PaddlePaddle----基于paddlehub的OCR识别

Paddlehub介绍 PaddleHub是一个基于PaddlePaddle深度学习框架开发的预训练模型库和工具集,提供了丰富的功能和模型,包括但不限于以下几种: 1.文本相关功能:包括文本分类、情感分析、文本生成、文本相似度计算等预训练模型和工具。…

计算机设计大赛 行人重识别(person reid) - 机器视觉 深度学习 opencv python

文章目录 0 前言1 技术背景2 技术介绍3 重识别技术实现3.1 数据集3.2 Person REID3.2.1 算法原理3.2.2 算法流程图 4 实现效果5 部分代码6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习行人重识别(person reid)系统 该项目…

【C语言基础】:深入理解指针(终篇)

文章目录 深入理解指针一、函数指针变量4.1 函数指针变量的创建4.2 函数指针变量的使用4.3 typedef关键字 二、函数指针数组三、转移表四、回调函数4.1 什么是回调函数4.2 qsort使用举例4.2.1 使用qsort函数排序整形数据4.2.2 使用qsort排序结构数据4.2.3 qsort函数的模拟实现 …

WPF(1)的MVVM的数据驱动学习示例

MVVM Model:数据模型、View 界面、ViewModel 业务逻辑处理 项目结构 界面数据绑定 <Window x:Class"WpfApp1.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/x…

Timus#1005

C【动态规划】 #include<iostream> #include<vector> using namespace std; int main() {int n;cin >> n;vector<int> dp(100000 * 20);vector<int> a(n);int ans 0, cur 0;for (int i 0; i < n; i){cin >> a[i];ans a[i];}int sum…

虚拟主播视频制作,低成本的数字人播报方案

传统的视频制作方式往往面临着成本高、周期长、人力投入大等挑战。为了满足企业对于高效、低成本视频制作的需求&#xff0c;美摄科技凭借其强大的技术研发实力&#xff0c;推出了面向企业的虚拟主播视频解决方案&#xff0c;为企业带来了全新的数字人播报视频制作体验。 美摄…

备考2025年AMC8数学竞赛:吃透2000-2024年600道AMC8真题就够

我们继续来随机看五道AMC8的真题和解析&#xff0c;根据实践经验&#xff0c;对于想了解或者加AMC8美国数学竞赛的孩子来说&#xff0c;吃透AMC8历年真题是备考最科学、最有效的方法之一。 即使不参加AMC8竞赛&#xff0c;吃透了历年真题600道和背后的知识体系&#xff0c;那么…

Linux学习——锁

目录 ​编辑 一&#xff0c;锁的概念 二&#xff0c;锁的操作 1&#xff0c;锁类型 pthread_mutex_t 2&#xff0c;初始化锁 3&#xff0c;上锁 4&#xff0c;解锁 5&#xff0c;销毁锁 三&#xff0c;线程安全问题演示 四&#xff0c;锁的原理 五&#xff0c;死锁 …

《IAB视频广告标准:综合指南(2022)》之概述篇 - 我为什么要翻译介绍美国人工智能科技公司IAB 系列(2)

IAB平台&#xff0c;使命和功能 IAB成立于1996年&#xff0c;总部位于纽约市。 作为美国的人工智能科技巨头社会媒体和营销专业平台公司&#xff0c;互动广告局&#xff08;IAB- the Interactive Advertising Bureau&#xff09;自1996年成立以来&#xff0c;先后为700多家媒体…

每日一练:LeeCode-56、合并区间【数组+滑动窗口】

4.合并区间 LeeCode-56、合并区间 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组&#xff0c;该数组需恰好覆盖输入中的所有区间 。 1 < intervals.le…

React-嵌套路由

1.概念 说明&#xff1a;在一级路由中又内嵌了其他路由&#xff0c;这种关系就叫做嵌套路由&#xff0c;嵌套至一级路由内的路由又称作二级路由。 2.实现步骤 说明&#xff1a;使用childen属性配置路由嵌套关系&#xff0c;使用<Outlet/>组件配置二级路由渲染的位置。…

重读 Java 设计模式: 解析单例模式,保证唯一实例的创建与应用

本周工作太忙了&#xff0c;变成了加班狗&#xff0c;下班回来也没时间写&#xff0c;只能利用周末时间写了&#x1f62d;。 好了&#xff0c;言归正传&#xff0c;本次我们先来介绍下设计模式中创建型模式-单例模式。 一、引言 单例模式是设计模式中最简单但又最常用的一种模…

OpenCV 绘制文字的介绍

1、前言 OpenCV 提供了用于绘制文字的putText()方法 使用这个方法不仅能够设置字体的样式、大小和颜色&#xff0c;而且能够使字体呈现斜体的效果&#xff0c;还能够控制文字的方向&#xff0c;进而使文字呈现垂直像的效果。putText()方法的语法格式如下 需要注意的是&#x…

新版ui周易测算网站H5源码/在线起名网站源码/运势测算网站系统源码,附带系统搭建教程

支持对接第三方支付 安装方法以linux为例 1、建议在服务器上面安装宝塔面板&#xff0c;以便操作&#xff0c;高逼格技术员可以忽略这步操作。 2、把安装包文件解压到根目录&#xff0c;同时建立数据库&#xff0c;把数据文件导入数据库 3、修改核心文件config/inc_config.…

java通过poi-tl生成word

我看公司之前做电子合同&#xff0c;使用TIBCO jaspersoft做的报表模板&#xff0c;如果是给自己公司开发或者给客户做项目&#xff0c;这个也没有什么&#xff0c;因为反正模板是固定的&#xff0c;一次性开发&#xff0c;不用担心后续的问题。即使后期有调整&#xff0c;改一…

023—pandas 扩展逗号爆炸分隔字符串数据

需求&#xff1a; 将 c1 按逗号拆分&#xff0c;爆炸为一行一行数据&#xff0c;然后将 c1 后边的有逗号的扩展成行&#xff0c;没逗号的只写在第一行。 思路&#xff1a; 先将 DataFrame 中有逗号的值分拆转为列表&#xff0c;接下来我们对 c1 进行爆炸&#xff0c;就得到了…

排序算法全景:从基础到高级的Java实现

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…

(黑马出品_06)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式

&#xff08;黑马出品_06&#xff09;SpringCloudRabbitMQDockerRedis搜索分布式 微服务技术ES搜索和数据分析 今日目标1. 查询文档1.1.DSL查询分类1.2.全文检索查询1.2.1.使用场景1.2.2.基本语法1.2.3.示例 1.3.精准查询1.3.1.term查询1.3.2.ran…

【机器学习】包裹式特征选择之基于模型的特征选择法

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;机器学习 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进…