MAC笔记本里Spyder python 的安装问题 和 虚拟环境VENV的创建

2023-12-07 05:01

本文主要是介绍MAC笔记本里Spyder python 的安装问题 和 虚拟环境VENV的创建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

芙Spyder 作为python的开发环境还是很好用的,在MAC笔记本里直接下载Spyde安装即可。

安装完成以后目录在:

/Applications/Spyder.app/Contents 

此目录下有几个子目录如下:

Frameworks        Info.plist    MacOS    PkgInfo    Resources      _CodeSignature

其中可执行文件Spyder和python在MacOS的子目录下;

资源包都在Resouces子目录下

如果在MacOS目录下执行python命令,会出现报错;但是在Spyder的GUI界面里运行python代码是没问题的。

./python

Could not find platform independent libraries <prefix>

Could not find platform dependent libraries <exec_prefix>

Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]

Python path configuration:

  PYTHONHOME = (not set)

  PYTHONPATH = (not set)

  program name = './python'

  isolated = 0

  environment = 1

  user site = 1

  import site = 1

  sys._base_executable = '/Applications/Spyder.app/Contents/MacOS/python'

  sys.base_prefix = '/Users/runner/hostedtoolcache/Python/3.9.14/x64'

  sys.base_exec_prefix = '/Users/runner/hostedtoolcache/Python/3.9.14/x64'

  sys.platlibdir = 'lib'

  sys.executable = '/Applications/Spyder.app/Contents/MacOS/python'

  sys.prefix = '/Users/runner/hostedtoolcache/Python/3.9.14/x64'

  sys.exec_prefix = '/Users/runner/hostedtoolcache/Python/3.9.14/x64'

  sys.path = [

    '/Users/runner/hostedtoolcache/Python/3.9.14/x64/lib/python39.zip',

    '/Users/runner/hostedtoolcache/Python/3.9.14/x64/lib/python3.9',

    '/Users/runner/hostedtoolcache/Python/3.9.14/x64/lib/lib-dynload',

  ]

Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding

Python runtime state: core initialized

ModuleNotFoundError: No module named 'encodings'

Current thread 0x00007ff8544c7700 (most recent call first):

原因是 PYTHONHOME没设置,可以通过对环境变量PYTHONHOME设置来解决这个问题。

MAC下的zsh terminal的环境配置文件在/Users/用户名/.zshrc。 (用户级的环境文件)

使用vim编辑.zshrc文件

vim ~/.zshrc

在文件末尾输入:

export PYTHONHOME=/Applications/Spyder.app/Contents/Resources

保存后,再执行:

source ~/.zshrc

通过export命令查看环境变量里是否有PYTHONHOME的设置,如果设置成功,那么可以解决上述问题。

 另外,如果用的是bash,可以编辑 ~/.bash_profile (/etc/profile对所有用户生效,~/.bash_profile只对当前用户生效。

另外环境变量PATH的配置命格式:

export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:...:<PATH N>

虚拟环境VENV的介绍:

python3.3以后安装包自带VENV工具,可以用来配置python虚拟环境

虚拟环境的主要使用场景是:如果有两个不同的project需要用到同一个包package的不同版本,比如project1用到version1,project2用到version2。那么需要给不同project安装不同的版本。

具体用法:此时就需要用到VENV,

在project1的目录下执行命令:

python3 -m venv .venv

此时在目录下会创建一个.VENV的子目录,包含以下文件/文件夹:

bin    include     lib     pyvenv.cfg

其中bin文件夹下:python,pip 等可执行文件

lib文件夹下: 有site-packages,里面的包几乎为空

从上面可以看出,VENV工具基于已经安装的python环境,从中选取一些必须的文件,安装到这个project的当前目录下的.venv目录下,创建了一个封闭的运行环境,里面有必须的python命令和site-packages。

然后用户在当前目录下再执行下面命令,激活虚拟环境,

source .venv/bin/activate

此时再使用pip安装当前project需要的packages。例如下面命令,可以指定需要安装的packages的版本:

python3 -m pip install 'requests==2.18.4'

这个package会被安装在当前工程的目录下面的.venv下的site-packages子目录里,这样就不会和别的project共享package,实现了文件隔离。

在project的当前目录下执行下面命令,可以关闭虚拟环境:

deactivate

附上python官网对于虚拟环境操作说明如下:

Install packages in a virtual environment using pip and venv - Python Packaging User Guide

linux/MACos下pip的安装:

  • 方法一:

  • Download the script, from https://bootstrap.pypa.io/get-pip.py.

  • python get-pip.py

  • 方法二:

  • python -m ensurepip --upgrade
  • pip升级  
    python -m pip install --upgrade pip

这篇关于MAC笔记本里Spyder python 的安装问题 和 虚拟环境VENV的创建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/464558

相关文章

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

如何使用 Python 读取 Excel 数据

《如何使用Python读取Excel数据》:本文主要介绍使用Python读取Excel数据的详细教程,通过pandas和openpyxl,你可以轻松读取Excel文件,并进行各种数据处理操... 目录使用 python 读取 Excel 数据的详细教程1. 安装必要的依赖2. 读取 Excel 文件3. 读

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

利用Python调试串口的示例代码

《利用Python调试串口的示例代码》在嵌入式开发、物联网设备调试过程中,串口通信是最基础的调试手段本文将带你用Python+ttkbootstrap打造一款高颜值、多功能的串口调试助手,需要的可以了... 目录概述:为什么需要专业的串口调试工具项目架构设计1.1 技术栈选型1.2 关键类说明1.3 线程模

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

Python ZIP文件操作技巧详解

《PythonZIP文件操作技巧详解》在数据处理和系统开发中,ZIP文件操作是开发者必须掌握的核心技能,Python标准库提供的zipfile模块以简洁的API和跨平台特性,成为处理ZIP文件的首选... 目录一、ZIP文件操作基础三板斧1.1 创建压缩包1.2 解压操作1.3 文件遍历与信息获取二、进阶技

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.