Python快速入门体验
Python快速入门体验
- 一、环境信息
- 1.1 硬件信息
- 1.2 软件信息
- 二、Conda安装
- 2.1 Conda介绍
- 2.1.1 Conda简介
- 2.1.2 Conda、Anaconda及Miniconda及的关系
- 2.2 Conda安装包下载
- 2.2.1 Miniconda下载
- 2.2.2 Anconda下载
- 2.3 Conda安装
- 2.3.1 Miniconda安装
- 2.3.2 Anconda安装
- 2.4 Conda初始化
- 三、Python安装
- 3.1 创建PY虚拟环境
- 3.2 激活PY虚拟环境
- 3.3 安装PY包示例
- 四、开发环境搭建
- 4.1 安装开发工具
- 4.2 关联Conda环境
- 五、Hello Word
- 5.1 新建HelloWord
- 5.2 输出HelloWord
- 六、常见问题
- 6.1 无法安装PyQt5
- 6.2 无法安装PY3.7
一、环境信息
1.1 硬件信息
- 型号 :MacBook Pro
- 内存 :16GB
- 硬盘 :512GB SSD
- 处理器 :Apple M2
- 宿主机CPU架构 :ARM
1.2 软件信息
- Python版本 :3.7
- Conda版本 :Miniconda3 macOS Apple M1 64-bit bash / Anaconda3-2023.07-2-MacOSX-arm64.pkg
二、Conda安装
2.1 Conda介绍
2.1.1 Conda简介
Conda 是为 Python 程序创建的,适用于 Linux,OS X 和Windows,也可以打包和分发其他软件, 是当今最流行的 Python 环境管理工具。
因为Python的版本比较多,并且它的库也非常广泛,同时库和库之间存在很多依赖关系,所以在库的安装和版本的管理上很麻烦,因此设计Conda作为一个管理版本和Python环境的工具,但它业可以打包和管理任何语言的软件。
2.1.2 Conda、Anaconda及Miniconda及的关系
- Conda:Conda是Anaconda的包管理器,主要用来安装和管理软件包。
- Anaconda:Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。
- Miniconda:Miniconda只包括Conda、Python,是Anaconda的简版,Miniconda也是一个软件发行版。

2.2 Conda安装包下载
根据电脑型号及CPU架构选择对应的包进行下载。
2.2.1 Miniconda下载
因为乙真仙人用的是Mac M2所以从Miniconda官网下载Miniconda3 macOS Apple M1 ARM 64-bit bash版本,直接用sh执行;下载地址:Miniconda下载。

2.2.2 Anconda下载
因为乙真仙人用的是Mac M2所以从Anconda清华源上下载Anaconda3-2023.07-2-MacOSX-arm64.pkg版本,直接开箱安装;下载地址(使用清华源):Anconda下载。

2.3 Conda安装
后续体验说明是基于Anconda。
2.3.1 Miniconda安装
# 文件名是自己下载的sh文件,-p后面填安装路径
# -b 表示将环境变量自动写入到~/.bash文件中
sh Miniconda3-py311_23.5.2-0-MacOSX-arm64.sh -b -p ~./miniconda3# 将conda路径写入shell配置
source ~./miniconda3/bin/activate

2.3.2 Anconda安装
# 安装完成后执行如下命令切换conda的base环境
source ~/.zshrc

2.4 Conda初始化
# 关闭anconda的debug日志
conda config --set debug false# conda源配置
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
conda config --set show_channel_urls yes# 查看源
cat .condarc# 至此conda初始化完成,可以通过conda -h查看conda command说明

三、Python安装
3.1 创建PY虚拟环境
搭建之后就可以使用conda env list查看到新创建的虚拟环境
# 模版
conda create -n 虚拟环境名 python=对应的python版本# 实际创建
conda create -n py37 python=3.7
3.2 激活PY虚拟环境
# 查看已经存在的虚拟环境
conda env list# 激活即切换至对应的py环境
conda activate py37# 退出当前py虚拟环境
conda deactivate# 查看当前py环境已有的py包
conda list

3.3 安装PY包示例
# 例如查看opencv-python可装的版本
conda search tensorflow# 在当前py环境下安装opencv-python包
# -i: 指定镜像加速源https://pypi.tuna.tsinghua.edu.cn/simple
pip install tensorflow==2.2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple # 常用命令如下
# 安装:pip install [package]
# 删除:pip uninstall [package]
# 列出已安装的包:pip list
# 查看包的详细信息: pip show <package-name>

四、开发环境搭建
4.1 安装开发工具
因为需要兼容Java所以乙真仙人直接用IDEA了,小伙伴们也可以是使用VSCode或者PyCharm。

4.2 关联Conda环境
1.新建项目并新增Python语言
2.点击Install

3.Restart INDE并关联Conda

五、Hello Word
5.1 新建HelloWord


5.2 输出HelloWord

六、常见问题
6.1 无法安装PyQt5
错误如下图所示,异常日志:Preparing metadata (pyproject.toml) … error
该异常是由于python版本的原因,pyqt5只适用于python3.8以下的版本,所以一开始通过python3.8无法安装pyqt5,通过python3.7可以安装。

6.2 无法安装PY3.7
错误如下图所示,异常日志:PackagesNotFoundError: The following packages are not available from current channels: - python=3.7

该异常是由于当前channel最低只支持python3.8,需要通过如下方式安装:
# 查看当前支持的python版本
conda search --full --name python# 通过其它方式安装python3.7
## 创建一个空的环境
conda create -n py37
## 启动该环境
conda activate py37
## 使用x86_64 architecture channel(s)
conda config --env --set subdir osx-64
## 安装python3.7之类的操作
conda install python=3.7

至此,Python快速入门体验完成,后续会陆续输出人工智能相关的篇章~查阅过程中若遇到问题欢迎留言或私信交流。
相关文章:
Python快速入门体验
Python快速入门体验 一、环境信息1.1 硬件信息1.2 软件信息 二、Conda安装2.1 Conda介绍2.1.1 Conda简介2.1.2 Conda、Anaconda及Miniconda及的关系 2.2 Conda安装包下载2.2.1 Miniconda下载2.2.2 Anconda下载 2.3 Conda安装2.3.1 Miniconda安装2.3.2 Anconda安装 2.4 Conda初始…...
【从零学习python 】68. Python正则表达式中的贪婪和非贪婪模式
文章目录 贪婪和非贪婪模式进阶案例 贪婪和非贪婪模式 Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符; 非贪婪则相反,总是尝试匹配尽可能少的字符。 在*、?、、{m,n}后面…...
MongoDB【CRUD练习-条件查询-文档关系】
练习1-CRUD // 进入test数据库 use test; // 查询文档内容 db.students.find(); // 显示当前数据库中所有集合 show collections; // 向数据库的user集合中插入一个文档 db.users.insertOne({username: "lyh"} ); // 查看当前数据库中所有的集合 发现users集合被创建…...
使用M2Mqtt 接受以及发布MQTT消息
在NuGet库里面直接查找M2Mqtt就可以安装库。 使用framework4.5.2 1.配置文件操作 public static class GModel{public static BassSetup MainSetup { get; set; }public static void GetThisAdd(){MainSetup new BassSetup();string IPAdd ConfigurationManager.AppSettings…...
【SA8295P 源码分析】33 - Android GVM USB 透传配置
【SA8295P 源码分析】33 - Android GVM USB 透传配置 1. QNX 侧配置 USB1 为 GVM 使用2. Android 端配置 dts:以配置 USB1 为例3. QNX 端配置 linux-la.config:以配置 USB1 为例4. 在Android shell 中配置USB0 / USB1 的 Host/device 模式切换系列文章汇总见:《【SA8295P 源…...
华为OD机试 - 过滤组合字符串 - 深度优先搜索dfs算法(Java 2023 B卷 100分)
目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷&#…...
【Unity自制手册】游戏基础API大全
👨💻个人主页:元宇宙-秩沅 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 秩沅 原创 👨💻 收录于专栏:Uni…...
【LVS】4、HAProxy搭建web集群
目前常见的Web集群调度器分为软件和硬件 软件通常使用开源的LVS、Haproxy、Nginx LVS性能最好(基于内核转发),但是搭建相对复杂;Nginx的upstream模块支持群集功能,但是对群集节点健康检查功能不强,高并发性…...
【应用层】网络基础 -- HTTP协议
再谈协议HTTP协议认识URLurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见HeaderHTTP周边会话保持 再谈协议 协议是一种 “约定”. socket api的接口,在读写数据时,都是按 “字符串” 的方式来发送接收的(tcp是以字节流的方式发送的&am…...
【线性DP】模型总结(terse版)
【线性DP】模型总结 最长上升子序列 DP法 dp[i]表示以i结尾的最长上升子序列的长度。 对于每个i,遍历j1~i-1,若a[j] < a[i], 则dp[i] max(dp[i], dp[j] 1); 二分法 可以优化时间复杂度。 dp[]数组用来存储当前最长上升子序列。 若dp[]数…...
conda 常用命令
conda 常用命令 一、创建环境二、删除环境三、环境重命名四 、查看环境列表五、进入某个虚拟环境六、退出当前环境七、查看当前虚拟环境下的所有安装包八、安装或卸载包(进入虚拟环境之后)九、分享虚拟环境十、源服务器管理十一、升级十二、卸载十三、卸载十四、pip…...
前端面试:【异步编程】Callback、Promise和Async/Await
嗨,亲爱的JavaScript探险家!在JavaScript开发的旅程中,你会经常遇到异步编程的需求。为了处理异步操作,JavaScript提供了多种机制,包括Callbacks、Promises和Async/Await。本文将深入介绍这些机制,让你能够…...
大数据(四):Pandas的基础应用详解
专栏介绍 结合自身经验和内部资料总结的Python教程,每天3-5章,最短1个月就能全方位的完成Python的学习并进行实战开发,学完了定能成为大佬!加油吧!卷起来! 全部文章请访问专栏:《Python全栈教…...
计算机网络第3章(数据链路层)
计算机网络第3章(数据链路层) 3.1 数据链路层概述3.1.1 概述3.1.2 数据链路层使用的信道3.1.3 三个重要问题 3.2 封装成帧3.2.1 介绍3.2.2 透明传输3.2.3 总结 3.3 差错检测3.3.1 介绍3.3.2 奇偶校验3.3.3 循环冗余校验CRC(Cyclic Redundancy Check)3.3.…...
stm32之4.时钟体系
3.时钟体系(给单片机提供一个非常稳定的频率信号) ①可以使用三种不同的时钟源来驱动系统时钟(SYSCLK),CPU运行的频率为168MHZ; HSI(RC振荡器时钟,也就是高速内部时钟,一般来说很少用,因为精度…...
RPC和HTTP协议
RPC 全称(Remote Procedure Call),它是一种针对跨进程或者跨网络节点的应用之间的远程过程调用协议。 它的核心目标是,让开发人员在进行远程方法调用的时候,就像调用本地方法一样,不需要额外为了完成这个交…...
BUGFix:onnx -> TensorRT转换过程失败
先附上相关的onnx2trt的部分代码: def onnx2trt(onnx_path):logger trt.Logger(trt.Logger.ERROR)builder trt.Builder(logger)network builder.create_network(1 << int(trt.NetworkDefinitionCreationFlag.EXPLICIT_BATCH))parser trt.OnnxParser(netw…...
FFMPEG小白常用命令行
序列帧转H264视频 ffmpeg -r 60 -f image2 -s 1920x1080 -i fram%d.jpg -vcodec libx264 -crf 25 -pix_fmt yuv420p test.mp4 -vcodec h264 .\ffmpeg -r 60 -f image2 -s 1920x1080 -i %04d.jpeg -vcodec h264 test.mp4 %04d 表示用零来填充直到长度为4,i.e 000…...
个性定制还是纯粹简约:探寻界面选择背后的心理宇宙
在数码世界中,我们的界面选择成为了一张架起的桥梁,连接着个性的渴望与效率的追求。当我们面对个性化定制界面和极简版原装界面,我们仿佛站在了一座分岔路口,左右各有一片令人心驰神往的风景。究竟是走向五光十色的个性世界&#…...
【Java 高阶】一文精通 Spring MVC - 转发重定向(四)
👉博主介绍: 博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,WEB架构师,阿里云专家博主,华为云云享专家,51CTO 专家博主 ⛪️ 个人社区&#x…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
在Ubuntu24上采用Wine打开SourceInsight
1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...
数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)
名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 原创笔记:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 上一篇:《数据结构第4章 数组和广义表》…...
深入解析光敏传感技术:嵌入式仿真平台如何重塑电子工程教学
一、光敏传感技术的物理本质与系统级实现挑战 光敏电阻作为经典的光电传感器件,其工作原理根植于半导体材料的光电导效应。当入射光子能量超过材料带隙宽度时,价带电子受激发跃迁至导带,形成电子-空穴对,导致材料电导率显著提升。…...
【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法
使用 ROS1-Noetic 和 mavros v1.20.1, 携带经纬度海拔的话题主要有三个: /mavros/global_position/raw/fix/mavros/gpsstatus/gps1/raw/mavros/global_position/global 查看 mavros 源码,来分析他们的发布过程。发现前两个话题都对应了同一…...
