当前位置: 首页 > news >正文

树莓派5环境配置笔记 新建虚拟python环境—安装第三方库—配置Thonny解释器

树莓派5虚拟环境配及第三方库的安装🚀

        在完成了树莓派的系统下载和各项基础配置之后进入到了,传感器开发部分,在测试传感器开发之前我打算先安装一下自己需要的库,但是在我直接在系统的根目录下运行pip命令的时候总会报环境错误,例如我想安装一个绘图的库matplot,就出现了如下的错误,跟我我的搜索之后发现,树莓派将系统解释器的pip权限锁定了,是不能直接在系统环境下进行安装的,因此需要先去建一个虚拟环境,然后再虚拟环境中安装第三方库,并之后让编程软件使用虚拟环境解释器进行运行。


在这里插入图片描述

系列文章1:树莓派初探—给树莓派5 安装Raspberry Pi OS 操作系统
系列文章2:使用VNC-viewer对树莓派5 远程连接桌面—详细记录笔记版

在这里插入图片描述


文章目录

  • 树莓派5虚拟环境配及第三方库的安装🚀
  • 1. 新建虚拟环境
  • 2.配置全局清华园
  • 3.安装第三方库
  • 4.修改Thonny工具中的解释器
  • 结束

1. 新建虚拟环境


        为了使用pip命令安装第三方安装包,我们需要建立一个虚拟环境,新建一个虚拟1环境的命令为,python3 -m venv 环境名,这里环境名起名为myenv,则新建一个叫myenv的虚拟环境的完整命令如下。

python3 -m venv myenv

回车之后感觉无事发生

在这里插入图片描述

点击菜单栏上面的文件夹图标,打开文件管理界面。
在这里插入图片描述
可以看到在administrator文件夹下出现了一个myenv的文件夹,表示这个虚拟环境已经建好了。
在这里插入图片描述
之后在终端输入source 环境名/bin/activate 命令进入虚拟环境,由于上一步建立的虚拟环境的名字叫myenv

source myenv/bin/activate

在这里插入图片描述
输入之后命令行的左边多了一个(myenv)表示我们进入到了虚拟环境之下。

2.配置全局清华园


        考虑到树莓派的网速过慢的问题,我在直接pip安装的时候基本就是超时,所以需要配置一个全局的清华园镜像,从国内镜像源安装,这样能保证连接下载的稳定性。输入下面的命令配置全局的清华园。

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

然后通过pip config list命令看一下是否配置正确了

pip config list

在这里插入图片描述

3.安装第三方库


输入 pip3 install 包名 即可进行安装了,然后不能加sudo,如果加了还是最开始的内个错误。

pip install gpiozero

在这里插入图片描述

4.修改Thonny工具中的解释器


Thonny是一款专为初学者设计的Python编程工具,广泛用于树莓派的Python编程教学和开发。它具有简洁直观的界面,集成了代码编辑、调试和运行环境,支持逐步执行代码,帮助用户理解程序的运行过程。此外,Thonny还支持插件扩展,适合不同层次的Python开发者,从入门到进阶都能得心应手。

我们在虚拟环境中新建了自己的虚拟环境之后,下一步要做的就是打开树莓派系统自带的python编程工具Thonny,让设置该工具使用的解释器。

在这里插入图片描述
在工具的右下角会显示当前选择的python3解释器的路径,此时路径为user/bin/python3表示使用的是系统默认自带的解释器,接下来选择我们自己的解释器,点击右小角的文字部分。
在这里插入图片描述
然后选择配置解释器,这里最上面的就是我自己之前找好的虚拟环境的python解释器的路径,默认是没有的
在这里插入图片描述
之后点击这三个小点。
在这里插入图片描述
进入文件管理之后点击home就能看到我们刚建好的虚拟环境myenv文件夹,之后就是在这个文件夹里继续寻找,点击进入到myenv的环境下。
在这里插入图片描述
之后点击bin目录。
在这里插入图片描述
找到里面的python3,然后点OK。
在这里插入图片描述
之后python executable 解释器的路径就已经被选择好了。
在这里插入图片描述
点击OK之后,Thonny,右下角和Shell中的解释器路径都已经变到了之前我们选择的虚拟环境中python的解释器中的路径,然后输入一个print(“hello world”),OK可以正常运行。
在这里插入图片描述

结束


        在完成了安装库自由只有,之后就可以尝试部署一些大模型相关的网络API相关的内容,然后就是再加一些传感器的例子代码之类,数字输入输出,模拟输入输入,串口通信,定时中断,然后树莓派的部分就直接结束告一段落。

相关文章:

树莓派5环境配置笔记 新建虚拟python环境—安装第三方库—配置Thonny解释器

树莓派5虚拟环境配及第三方库的安装🚀 在完成了树莓派的系统下载和各项基础配置之后进入到了,传感器开发部分,在测试传感器开发之前我打算先安装一下自己需要的库,但是在我直接在系统的根目录下运行pip命令的时候总会报环境错误&a…...

浅谈Winform

一、Winform简介说明 C# 是一种面向对象的编程语言,由微软开发并作为.NET框架的主要编程语言。C# 设计时考虑了易用性,并且具有丰富的特性,如垃圾回收、异常处理、泛型、LINQ(Language Integrated Query)、异步编程等。…...

MySQL(二)——CRUD

文章目录 CRUD新增全列插入指定列插入插入查询结果 查询全列查询指定列查询查询字段为表达式表达式不包含字段表达式包含一个字段表达式包含多个字段 补充:别名去重查询排序条件查询 补充:运算符区间查询模糊查询NULL的查询 分页查询聚合查询聚合函数 分…...

presto高级用法(grouping、grouping sets)

目录 准备工作: 在hive中建表 在presto中计算 分解式 按照城市分组 统计人数 按照性别分组 统计人数 ​编辑 按照爱好分组 统计人数 ​编辑 按照城市和性别分组 统计人数 按照城市和爱好分组 统计人数 按照性别和爱好分组 统计人数 按照城市和性别还有…...

二十五年后,Microsoft终于移除了FAT32的32GB分区限制——一个从草稿到现实的故事

二十五年后,Microsoft终于移除了FAT32的32GB分区限制——一个从草稿到现实的故事 你可能不知道,FAT32文件系统的32GB分区限制是怎么来的。这个限制其实是1994年Windows前开发者Dave Plummer无心插柳的结果,也是"草台班子"式开发的…...

Java二十三种设计模式-命令模式(18/23)

命令模式:将请求封装为对象的策略 概要 本文全面探讨了命令模式,从基础概念到实现细节,再到使用场景、优缺点分析,以及与其他设计模式的比较,并提供了最佳实践和替代方案,旨在帮助读者深入理解命令模式并…...

Kafka系列之:Dead Letter Queue死信队列DLQ

Kafka系列之:Dead Letter Queue死信队列DLQ 一、死信队列二、参数errors.tolerance三、创建死信队列主题四、在启用安全性的情况下使用死信队列更多内容请阅读博主这篇博客: Kafka系列之:Kafka Connect深入探讨 - 错误处理和死信队列一、死信队列 死信队列(DLQ)仅适用于接…...

Fragment学习笔记

静态加载 <fragment android:name"com.example.serviceapplication.fragment.TestFragment"android:layout_width"match_parent"android:layout_height"wrap_content"app:layout_constraintStart_toStartOf"parent"app:layout_cons…...

NGINX 基础参数与功能

章节 1 NGINX 的源码安装 2 NGINX 核心配置详解 3 NGINX 之 location 匹配优先级 4 NGINX 基础参数与功能 目录 1 实现 Nginx 账户认证功能 1.1 创建htpasswd 认证文件 1.2 创建数据目录 1.3 指定认证文件路径 1.4 测试效果 2 定义重定向错误日志 2.1 指定错误日志访问路…...

css设置元素居中显示

CSS中实现居中显示可以通过不同的属性来实现&#xff0c;取决于你是要水平居中还是垂直居中&#xff0c;或者两者都要。以下是一些常用的居中方法&#xff1a; 1.水平居中 - 行内元素或文本 .center-text {text-align: center; } 2.水平居中 - 块级元素 .center-block {mar…...

js判断一个任意值为空包括数组和对象

在JavaScript中&#xff0c;判断一个变量是否为空可以考虑以下几种情况&#xff1a; 如果变量可能是null或undefined&#xff0c;可以直接判断。 对于数组&#xff0c;如果想要判断数组为空&#xff08;长度为0&#xff09;&#xff0c;可以检查其length属性。 对于对象&…...

EmguCV学习笔记 VB.Net和C# 下的OpenCv开发

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 笔者的博客网址&#xff1a;https://blog.csdn.net/uruseibest 本教程将分为VB.Net和C#两个版本分别进行发布。 教程VB.net版本请…...

“TCP粘包”不是TCP的问题!

前言 写RPC用了Netty。涉及到粘包拆包问题。想复习一下。发现网上博客多是概念模糊不清。没有触及本质或者没有讲清楚。 遂决定自己写一篇 “TCP粘包”是谁的问题&#xff1f; 首先我们要明确TCP是面向字节流的协议。也就是说我们在应用层想使用TCP来传输数据时&#xff0c;…...

Electron项目依赖管理:最佳实践与常见错误

问题一 问题描述: 输入命令 pnpm add electron 后&#xff0c; electron 包在执行 postinstall 脚本时&#xff0c;尝试从网络上下载 Electron 二进制文件&#xff0c;但由于网络问题&#xff08;如连接超时或代理设置问题&#xff09;&#xff0c;导致下载失败。 λ pnpm a…...

华为数通路由交换HCIP/HCNP

2017-2022年软考高级网络规划设计师真题解析视频&#xff01;软考复习一定要多做历年真题&#xff01; 2022年软考网络规划设计师真题解析_哔哩哔哩_bilibili 2024年5月软考网络工程师真题解析合集&#xff0c;考后估分版【综合知识案例分析】 2024年5月软考网络工程师真题解…...

搜索面试题

1、目前怎么构建样本的&#xff1f;如果排序中第5个被点了&#xff0c;前面的作为负样本&#xff0c;后面的不要怎么样&#xff1b;为什么不好&#xff0c;为什么好。 点击作为负样本&#xff0c;曝光未点击作为负样本&#xff1b; 可以这样理解。您提到的排序中第5个被点的对…...

WPF学习(8) --Windows API函数的使用

一、API函数的介绍 1.FindWindow函数 [DllImport("user32.dll", CharSet CharSet.Auto)]public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); 功能: FindWindow函数用于根据窗口的类名和窗口名称查找窗口的句柄&#xff08;IntPtr…...

Linux系统-用户账号文件

文章目录 文件一&#xff08;passwd&#xff09; 文件二&#xff08;shadow&#xff09; 加密密码部分 举例理解 文件三&#xff08;gshadow&#xff09; 文件四&#xff08;group&#xff09; 文件五&#xff08;skel&#xff09; 文件六&#xff08;login.defs&#…...

docker配置国内镜像加速

docker配置国内镜像加速 由于国内使用docker拉取镜像时&#xff0c;会经常出现连接超时的网络问题&#xff0c;所以配置Docker 加速来使用国内 的镜像加速服务&#xff0c;以提高拉取 Docker 镜像的速度。 1、备份docker配置文件 cp /etc/docker/daemon.json /etc/docker/da…...

C语言实现排序之堆排序算法

一、堆排序算法 基本思想 堆排序是一种比较有效的排序方法&#xff0c;其基本思想是&#xff1a; 构建最大堆&#xff1a;首先将待排序的数组构建成一个最大堆&#xff0c;即对于每个非叶子节点&#xff0c;它的值都大于或等于其子节点的值。排序&#xff1a;然后将堆顶元素…...

Boomi 与 Gong 达成合作,将 Revenue AI 引入 Boomi Agentstudio

Gong 的 Revenue AI 现已原生集成至 Boomi Enterprise Platform 面向 AI 时代的数据激活公司 Boomi 今日宣布&#xff0c;与 Revenue AI 领域领导者 Gong 达成合作&#xff0c;将 Gong 捕获的营收信号原生整合至 Boomi Enterprise Platform。通过此次合作&#xff0c;企业可构…...

NoFences:如何用免费开源方案革命性管理你的Windows桌面分区

NoFences&#xff1a;如何用免费开源方案革命性管理你的Windows桌面分区 【免费下载链接】NoFences &#x1f6a7; Open Source Stardock Fences alternative 项目地址: https://gitcode.com/gh_mirrors/no/NoFences 你是否厌倦了在杂乱无章的Windows桌面上寻找文件&…...

嵌入式开发调试实战:从内存泄漏到死锁的排查技巧与工具链

1. 项目概述&#xff1a;嵌入式开发的“捉虫”艺术干了十几年嵌入式&#xff0c;从8位单片机玩到多核ARM Cortex-A&#xff0c;从裸机撸到RTOS&#xff0c;我最大的感受就是&#xff1a;嵌入式开发&#xff0c;七分在调试&#xff0c;三分在写码。你代码写得再漂亮&#xff0c;…...

告别网络玄学:手把手教你用寄存器调试法搞定YT8521 PHY‘ping不通’故障

寄存器调试实战&#xff1a;用YT8521 PHY案例解析RGMII时序优化 当一块嵌入式开发板的网络接口出现"能发不能收"的诡异现象时&#xff0c;多数工程师的第一反应往往是检查驱动配置或网线连接。但在实际项目中&#xff0c;这种看似简单的"ping不通"问题&…...

AI 高性能笔记本电脑高效紧凑型功率 MOSFET 完整选型方案

随着 AI 算力在笔记本电脑中的爆发式增长&#xff08;如本地大模型、智能温控、性能调度&#xff09;&#xff0c;电源架构对功率 MOSFET 提出严苛要求&#xff1a;超高电流密度、极低损耗、超小封装、逻辑电平驱动。微碧半导体&#xff08;VBsemi&#xff09;基于先进的 Trenc…...

GitHub神级项目推荐:30+款AI编程工具系统提示词全公开,Cursor/Manus/Devin/Windsurf内部指令一网打尽

前言 为什么同样用GPT-4o&#xff0c;别人的Cursor写代码又快又准&#xff0c;你的却经常出bug&#xff1f;为什么Windsurf的Cascade能自主完成复杂重构&#xff0c;你的AI却只会写简单函数&#xff1f;答案不在模型本身&#xff0c;而在每家AI公司视为核心机密的系统提示词&am…...

产品经理必懂的博弈论:如何用帕累托最优和纳什均衡设计用户激励与平台规则

产品经理必懂的博弈论&#xff1a;如何用帕累托最优和纳什均衡设计用户激励与平台规则 在互联网产品的世界里&#xff0c;每天都有无数场看不见的博弈正在上演——司机与乘客的匹配、商家与消费者的互动、创作者与平台的共生。这些看似复杂的商业行为背后&#xff0c;往往遵循着…...

告别手写代码!用Roboflow的Auto-Orient和Mosaic增强你的YOLO数据集(附完整流程)

零代码实现YOLO数据集增强&#xff1a;Roboflow自动化工具全解析 在目标检测领域&#xff0c;数据质量往往直接决定模型性能上限。传统数据增强方法需要开发者手动编写Python脚本调整图像方向、处理标注格式&#xff0c;不仅耗时耗力&#xff0c;还容易因格式兼容性问题导致训练…...

别再只会用MI了!深入对比PLV、MVL、MI:在Python中如何为你的EEG数据选择最佳跨频耦合算法

别再只会用MI了&#xff01;深入对比PLV、MVL、MI&#xff1a;在Python中如何为你的EEG数据选择最佳跨频耦合算法 脑电信号分析中&#xff0c;跨频耦合&#xff08;Cross-Frequency Coupling, CFC&#xff09;已成为揭示神经活动协调机制的重要工具。面对PLV、MVL、MI这三种主流…...

保姆级教程 | Gaussian优化后的能量值

背景Gaussian优化后会获得很多能量&#xff0c;应该如何区别这些能量的差异性步骤1. 电子能&#xff08;纯 SCF 能量&#xff0c;无热修正&#xff09;&#xff1a;单点能、对比电子结构、不加热效应grep Done 文件名.log这是纯电子能量&#xff0c;只包含电子结构&#xff0c;…...