Python详细安装与环境搭建

Python详细安装与环境搭建

一. 下载python

python官网:https://www.python.org/

按照图片所示进行下载

        其中, x86 的为 32 位安装包,x86-64 为 64 位安装包。Stable Releases为稳定版本,Pre-releases为预发行版。executable installer为完整的安装包,下载完即可脱网安装;web-based installer 体积更小,安装时仍需联网下载其他部分。

二. 安装

1.安装包形式

Install Now:默认当前账户安装,安装路径和内容是默认的。

Customize installation:自定义安装。

Install launcher for all users (recommended) / Use admin privileges when installing py.exe:为该计算机的每一个用户都安装,该项是否勾选可根据需求而定。

Add python.exe to PATH:该项勾选,添加pythonwindows的系统路径,方便操作系统自动识别。

Documentation:安装python离线文档文件,一般是python的使用说明文档,该项可选可不选。

pip:安装pip,能在命令窗口安装python外部的库,该项勾选。在命令窗口使用pip安装或卸载库,库的位置一般是python安装路径下的Lib\site-packages文件夹下

TCL/TK and IDLE:安装TkinterIDLE开发环境,该项是否勾选可根据需求而定。Tkinter 模块是 Python 的标准 Tk GUI 工具包的接口,该模块可以创建 GUI 应用程序。IDLEPython的集成开发和学习环境,是一个可视化的shell命令行,安装后在开始菜单中生成IDLE快捷方式。

Python test suite:装Python的标准库测试套件,可用于执行已编写的测试用例,用来测试写的类和方法是否符合预期,该项是否勾选可根据需求而定。

Py LauncherLauncher是适用于windowspython启动器,可帮助我们定位和执行不同的python版本,该项勾选。

for all users(requires admin privileges):启动器为所有windows账户都可用,上面安装设置中已勾选管理员权限,该项是否勾选可根据需求而定。

Install for all users:为所有windows账户都可用,该项是否勾选可根据需求而定。

Associate files with Python(requires the 'py'launcher):文件关联,关联.py后缀的文件到Python(需要安装python启动器launcher),该项勾选。

Create shortcuts for installed applications:为安装应用程序创建快捷方式,在开始菜单中会显示创建的有关快捷方式,该项勾选。

Add Python to environment variables:添加python为系统的环境变量,该项勾选。前面步骤勾选Add Python.exeto PATH后,该项自动勾选。

Precompile standard libraryPython的标准库(standard library)Python安装时默认安装的自带的库(也叫内置库)。预编译标准库(Precompile standard library),在安装时把标准库的.py 文件编译成.pyc字节码文件,以后运行的时候就可以省去编译,会快一点,该项可以勾选。

Download debugging symbols:下载调试符号,debugging symbols可以帮助调试程序,记录了变量、函数等这类符号和内存定位的关系,该项是否勾选可根据需求而定。

Download debug binaries(requires VS 2017 or later):下载调试二进制文件(需要安装VS 2017,VS是微软推出的一款功能强大的开发工具),该项是否勾选可根据需求而定。

Customizeinstall location:自定义安装路径,可以指定路径安装python

2.压缩包形式

将下载的压缩包,解压到自定义位置。

pip是包管理器,免安装版(压缩包版)不会安装,如果需要使用包管理器则需要手动安装。

下载地址:https://pypi.org/project/pip/#description

将下载完成的get-pip.py放在解压后的文件夹下面,然后导航栏上输入CMD进入命令窗口,执行

python get-pip.py命令,安装完成pip包管理器。

执行后会生成两个文件夹 LibScripts

三. 环境变量配置

四. 遇见的问题

1. 安装包

  • 问题1:永久修改pip源的时候,会报错。
  • 解决方法:在pip.ini配置文件中删除掉注释

永久修改pip源中pip.ini配置。

[global] timeout = 6000 index-url = https://pypi.tuna.tsinghua.edu.cn/simple [install] trusted-host = https://pypi.tuna.tsinghua.edu.cn

2. 压缩包

  • 问题1:在执行python get-pip.py命令时会报错。
  • 解决方法:删除掉Python312._pth文件中Import aite前面的#号。因为python 解释器启动一般会自动 import site ,并且调用 site.main() 。而在 Windows 的免安装版里,使用了 python312._pth 来指定包的位置。而通过这种方式加载 python ,为避免包冲突不会自动 import site。`ZEEKLOGERROR: Could not find a version that satisfies the requirement setuptools (from versions: none) ERROR: No matching distribution found for setuptools`
  • 问题2:打开cmd测试,pip -V出现问题,找不到模块。
  • 解决方法:删除掉Python312._pth文件中Import aite前面的#号。因为python 解释器启动一般会自动 import site ,并且调用 site.main() 。而在 Windows 的免安装版里,使用了 python312._pth 来指定包的位置。而通过这种方式加载 python ,为避免包冲突不会自动 import site

Read more

Flutter for OpenHarmony: Flutter 三方库 path_to_regexp 揭秘路由匹配与参数提取的核心算法(路由管道工程师)

Flutter for OpenHarmony: Flutter 三方库 path_to_regexp 揭秘路由匹配与参数提取的核心算法(路由管道工程师)

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net 前言 在进行 OpenHarmony 的应用架构设计时,我们经常需要处理“动态路由”。 * 页面路径模式:/profile/:userId * 实际跳转路径:/profile/9527 如何在众多的路由规则中,快速匹配到正确的页面,并精准提取出其中的动态参数 userId = 9527?这背后的核心驱动力,正是 path_to_regexp。它是 go_router、auto_route 等几乎所有顶级路由框架共享的底层逻辑库。 一、路由解析链路模型 该库将人类易读的路径模式,转化为机器可高效执行的正规表达式。 路径模式 ('/user/:id') path_to_regexp 编译器 高性能 RegExp (正则) 路径匹配

By Ne0inhk
【数据结构手札】顺序表实战指南(二):结构体构建 | 初始化 | 打印 | 销毁

【数据结构手札】顺序表实战指南(二):结构体构建 | 初始化 | 打印 | 销毁

🌈个人主页:聆风吟 🔥系列专栏:数据结构手札 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 * 📚专栏订阅推荐 * 📋前言 - 顺序表文章合集 * 一. ⛳️顺序表:重点回顾 * 1.1 🔔顺序表的定义 * 1.2 🔔顺序表的分类 * 1.2.1 👻静态顺序表 * 1.2.2 👻动态顺序表 * 二. ⛳️顺序表的基本操作实现 * 2.1 🔔动态顺序表结构体构建 * 2.2 🔔初始化顺序表 * 2.3 🔔销毁顺序表 * 2.4 🔔打印顺序表 * 三. ⛳️顺序表的源代码 * 3.1 🔔SeqList.h 顺序表的函数声明 * 3.

By Ne0inhk
【基础算法】算法的“预谋”:前缀和如何改变游戏规则

【基础算法】算法的“预谋”:前缀和如何改变游戏规则

🔭 个人主页:散峰而望 《C语言:从基础到进阶》《编程工具的下载和使用》《C语言刷题》《算法竞赛从入门到获奖》《人工智能》《AI Agent》 愿为出海月,不做归山云 🎬博主简介 【基础算法】算法的“预谋”:前缀和如何改变游戏规则 * 前言 * 前缀和 * 1.1 一维前缀和 * 1.1.1 前缀和 * 1.1.2 最大子段和 * 1.2 二维前缀和 * 1.2.1 二维前缀和 * 1.2.2 激光炸弹 * 结语 前言 在算法设计与优化中,前缀和是一种简单却强大的技巧,能够将复杂问题转化为高效计算。无论是处理一维数组的区间求和,还是解决二维矩阵的子矩阵问题,前缀和都能通过预处理将时间复杂度从线性降低到常数级别,彻底改变问题的解决方式。

By Ne0inhk
【数据结构和算法】面试必刷之随机链表复制:这三步让你彻底吃透 random 指针

【数据结构和算法】面试必刷之随机链表复制:这三步让你彻底吃透 random 指针

🔥小龙报:个人主页 🎬作者简介:C++研发,嵌入式,机器人等方向学习者 ❄️个人专栏:《C语言》《【初阶】数据结构与算法》 ✨ 永远相信美好的事情即将发生 文章目录 * 前言 * 一、随即链表的复制 * 1.1 题目 * 1.2 算法原理 * 1.3 代码 * 总结与每日励志 前言 随机链表的复制是数据结构中的经典难题,核心难点在于复制节点的random指针——其指向的节点可能尚未创建,也可能指向链表中的任意节点。本文采用“原地拷贝+拆分”的最优思路,分三步拆解解题逻辑,结合代码实现与原理分析,清晰讲解如何高效解决该问题,帮助读者吃透random指针的处理技巧,掌握链表操作的核心思维。 一、随即链表的复制 1.1 题目 链接:随机链表的复制 1.2 算法原理

By Ne0inhk