1.超快速入门,python安装与python基础,课堂级教程,python与机器学习(一)

目录

0 整体思路

1 方法一: 直接安装python

1-1安装程序

1-2压缩包

2 方法二: Anaconda安装

3 对环境变量的理解

4 简单应用与编辑器介绍

 4-1简单应用

 4-2 编辑器      

4-3 复杂一点的应用-以yolov8为例

5 思考


0 整体思路

        本文是python与机器学习专栏的第一篇文章,全文共 8400字。

        使用python编写数据处理、机器学习、深度学习等程序时,需要在所使用的计算机上安装好python。该类程序主要特征是通常为单一项目文件,无需使用数据库,无需设计前端等。故代码方面的难度不大,实际项目中程序难点在于算法的设计。

        安装python主要有两个方案,一是直接到python官网,下载python的压缩包或者安装程序,再将其目录添加至环境变量中,这样我们在cmd、pycharm(python的IDE,IDE:Integrated Development Environment,集成开发环境)、vscode(一款通用代码编辑器)等应用中,即可直接使用python,这种方法下,通过pip安装各种库时,库会直接放到该python环境下。当后续库或项目较多时,容易发生冲突,其解决方案之一为可利用python自带的venv虚拟环境功能等。

        另一思路为安装anaconda,利用anaconda来管理不同的环境,每个环境下有各自的python及其库。同时anaconda也内置了一些常用软件,使用上较为简易。

        如果已经安装的比较乱,比如既直接安装了python,又安装了anaconda,会更陷入一种混乱的局面(比如进入某个conda环境后,利用pip安装命令安装第三方库,会将其安装到conda外部的python环境中,而非该conda环境下).这种情况建议还是先清理干净,再从头进行清晰的安装部署,否则后续还是会造成一些不必要的麻烦。

        关于之后会提及的环境变量,理解方法是,如果你将某个路径添加到环境变量中,那么当你想运行(尤其是双击运行)某个程序时,系统自动地会在环境变量中查找可以运行该文件的应用。如果不添加环境变量,通过其他方式(一般通过代码编辑器操作)指定也是可以运行该文件的。对于一些命令行程序也是同样的,若不添加其到环境变量中,则在cmd中无法使用。

1 方法一: 直接安装python

        直接安装python,指的是直接安装python的解释器。

        打开python官网:www.python.org进行下载.在首页Downloads最新版本即可,版本问题其实无所谓,只是当我们需要利用到一些项目时,这些项目因为发布较早,当时的python版本或第三方库与当前版本存在差异,此时我们才需要下载之前某些版本的python。

图1 官网(局部)截图

        点击Python 3.XX.XX进入版本详情页.

图2 版本详情页

       滑到最下面下载对应文件(图3),这里官方推荐windows系统下载windows installer 64-bit(安装程序),下载后进入安装指引,安装较为方便,此外下载压缩包(windows embeddable package 64-bit)的方法也是可以的。关于64bit和32bit,目前绝大多数电脑均为64bit了(可右键桌面上我的电脑/此电脑/这台电脑点击属性/关于查看系统类型)。苹果电脑下载mac OS版安装程序。Linux下载源码tarball安装,Linux上许多程序都会使用这一方法安装,但是十分不建议在linux上这样安装python,Linux系统通常作为算力服务器使用,使用其做机器学习和深度学习的开发还是建议优先使用anconda方法。

图3 可供下载的资源

1-1安装程序

        下载windows installer 64-bit后,获得对应版本的.exe文件打开.下方有两个复选框,第一个是使用管理员权限进行安装,通常来说我们安装任何软件都是需要管理员权限(当然对于私人电脑其实就是我们自己随便点点的事),第二个框是将python添加到环境变量,这是通过安装程序方法安装python的一个优势,是比其他方法安装更便捷的地方,勾选之后在cmd中可直接使用python,有这一需要时可以安装。

        如果需要修改安装位置,点击customize installation,以此点击下一步,建议不要修改默认选项,只改变安装位置即可.

安装界面(程序默认勾选好第一个)

        具体说明一下"cmd中可直接使用python".当我们不勾选第二个复选框添加至环境变量,那么我们双击一个.py文件是不会运行程序的(可能让你选应用打开该文件,一般也只是能进入编辑器)。但是对于pycharm和vscode等编辑器,我们可以在这些编辑器中选择python路径,编译运行.py文件,这就是直观的区别,其他的可以自行进一步进行推理比较。这里是否勾选,均可通过电脑设置->系统->关于->高级系统设置进行修改。

       

1-2压缩包

        压缩包下载后是一个.zip文件,解压到自己所需的目录下即可,这时的效果与上述不勾选添加环境变量基本相同。我们已经可以通过代码编辑器指定到这个解压目录,编译运行文件。

        添加环境变量的方法:电脑设置->系统->关于,找到下方或右侧的高级系统设置.进入环境变量,

高级系统设置(系统属性)

环境变量

        修改系统变量中的Path变量(找到变量path双击或单击编辑),点击新建,将python.exe(的路径粘贴,全部点击确定退出.

        例如将zip解压到D:\python312下, 此时python.exe路径为 D:  \python312\python.exe, 那么环境变量粘贴D:/python312即可.

        此时我们可以进入python的交互解释器进行一些尝试,图中直接输入了python.exe的绝对路径,如果添加了环境变量,直接输入python即可进入解释器:

2 方法二: Anaconda安装

        Anaconda 是一个非常流行的开源数据科学平台,主要用于数据分析、机器学习和科学计算等领域。它的主要特点是可以方便地安装、更新和管理各种 Python 包,避免了复杂的包依赖问题。同时Anaconda 包含了 Jupyter Notebook,一个交互式开发环境,以方便用户进行数据分析、可视化和文档编写。

        进入anaconda官网下载: https://www.anaconda.com/download 。若不想注册,可以直接点击skip registration,直接进入下载页面选择对应版本即可。

     anaconda官网下载

        简单来说,与python安装类似,windows和mac系统根据安装指引安装即可(建议勾选添加到环境变量,方便命令行使用),linux系统这里下载了.sh的安装脚本,通过命令安装。(可能耗费一些时间)

#注意修改为自己的路径,
cd ~/Downloads
#在输入sh A后,按table可补全(当同文件夹下无其他A开头文件,有的话再输入n后可补全,以此类推)
sh Anaconda3-2021.05-Linux-x86_64.sh

        此时,在windows、mac、linux的命令内输入conda --version均可返回安装的版本,标志安装成功。如果没有在将anaconda添加至环境变量,可在anaconda主页找到prompt打开anaconda的命令行程序。

        使用方法,以通过conda新建一个python环境,用于后续数据处理为例。

#新建一个名为 MachineLearning 的环境,python版本指定为3.10,执行过程可能要键盘输入字母y,允许某些安装行为

conda create -n MachineLearning python==3.10

#查看所有环境,待上述命令执行完毕后,输入会返回只含有一个 MachineLearning 项的列表。

conda env list

#进入该环境
conda activate MachineLearning 

#此时即使用MachineLearning 环境编译运行文件,输入python,进入python界面可发现当前为指定的3.10版本

python

#在python命令行下 使用ctrl+c/ctrl+z或输入exit命令退出


#可能会有报错,指出无python命令,可尝试使用python3指令
python3

3 对环境变量的理解

        环境变量是在操作系统中用于存储和传递配置信息的一种机制。它们可以被操作系统和应用程序用来确定系统的各种设置和行为。对于 Python 来说,环境变量的作用:

  1. 确定 Python 解释器的位置:如果系统中有多个版本的 Python 安装,环境变量可以帮助操作系统找到正确的解释器。
  2. 查找第三方模块:当你安装了第三方 Python 模块时,环境变量可以告诉 Python 在哪里找到这些模块。
  3. 配置开发环境:可以通过设置环境变量来配置一些开发工具和框架的行为。

Python 目录加与不加环境变量的区别

  1. 不加环境变量:

    • 如果 Python 安装目录没有添加到系统的环境变量中,那么在命令行中直接输入python命令可能无法启动 Python 解释器。你需要使用完整的 Python 解释器路径来启动 Python,例如C:\PythonXX\python.exe(其中XX是 Python 版本号)。

      #添加了环境变量,运行当前文件夹下的test.py程序
      
      python test.py
      
      #或
      python ./test.py
      
      
      
      #没有添加环境变量
      
      #方法1
      C:\PythonXX\python.exe test.py
      
      #方法2,在python安装目录执行,输入test的完整路径
      cd C:\PythonXX\
      python xxx/test.py
      
      
    • 对于使用 Python 的第三方工具和脚本,它们可能无法自动找到 Python 解释器,需要手动指定 Python 的路径。

    • 在安装第三方模块时,可能需要手动指定 Python 的安装路径,否则安装程序可能无法找到正确的位置。

    • 便于手动管理。

  2. 加入环境变量:

    • 可以在任何目录下通过简单地输入python命令来启动 Python 解释器,无需手动干预。

    • 第三方工具和脚本可以自动找到 Python 解释器,无需手动干预。

    • 安装第三方模块时,安装程序通常可以自动找到 Python 的安装位置,无需手动干预。

    • 容易冲突。

4 简单应用与编辑器介绍

 4-1简单应用

        安装好python后,我们可以执行一些简单的直接执行一些简单的.py文件,利用如下代码实现一个批量复制功能,这有什么用呢?其实我并不是随便举的例子,前两天一位老师安排了搜集某个交叉领域论文的任务,我从许多网站和多台设备上下载了许多文件,汇总到一起后总是很乱,准备整理一下提交给老师,总的来说,将文件名QQ中同时含有关键词A和B放到一个文件夹(话题强相关),将剩余的放在另一个文件夹下(一般相关)。由于论文名字较长、论文数量较多人工筛选费时费力,此时如下代码就发挥了作用。

#导入需要使用的包,一般来说这是每个文件开头都会具有的

#os库用于与系统交互的操作
import os  

#shutil为python标准库中的一个高级文件操作模块
import shutil  
  

#定义函数,格式:“def 函数名(传入参数):”
def copy_pdf_files(source_folder, destination_folder):  
    #函数体内缩进以及
    
    # 确保目标文件夹存在,如果不存在就新建
    if not os.path.exists(destination_folder):  
        #条件语句缩进
        os.makedirs(destination_folder)  

    #输出路径 print(变量)
    print(source_folder)
    
    # 遍历源文件夹  
    for root, dirs, files in os.walk(source_folder): 
        #循环语句缩进
        for file in files:  
            # 检查文件是否是PDF  
            if file.lower().endswith('.pdf'):  
                # 构造完整的文件路径  
                full_file_path = os.path.join(root, file)  
                # 构造目标路径  
                dest_path = os.path.join(destination_folder, file)  
                # 复制文件  
                shutil.copy2(full_file_path, dest_path) 
                # 打印,字符串中嵌入变量 
                print(f'复制: {full_file_path} 到 {dest_path}')  
  
# 指定源文件夹和目标文件夹,充当传入参数
source_folder = "C:\\Users\\HP\\Desktop\\storage_copy\\"
destination_folder = r"C:\Users\HP\Desktop\output"
  
# 调用函数  
copy_pdf_files(source_folder, destination_folder)

        目前来看这类简单代码,在具有一定基础后,可通过目前许多主流大模型完成编写。这里的基础是指,即使不用大模型,也可以通过自行搜索完成完善功能代码。新手入门想尝试上述代码,手边又没有pdf文件可将endwith内的.pdf更换为.txt,桌面新建txt文档,将文件夹路径修改为自己电脑的真实路径,进行实验。代码具体原理在后续文章进一步讲解。

        使用这段代码最简便的方式为,新建txt文件,文本复制进去,保存,关闭文件,重命名文件将后缀改为py,在命令行运行即可。如果是使用python环境,并且添加至了环境变量,那么双击即可运行。

#使用conda的需要确保进入了conda环境,使用python环境并添加了环境变量的可直接在cmd操作

#进入当前目录进行操作,假设我新建的程序文件名为test2.py,并存放在在桌面

cd C:\Users\HP\Desktop

#执行程序
python test2.py

 4-2 编辑器      

        当然,我们只用txt写代码是不现实的,往往我们使用PycharmVscode(Visual Studio Code,不要与Visual Studio混淆,后者是C++/C/C#等编程语言常用的IDE)进行代码编写。Pycharm是专门用于编写python程序的软件,目前学生可以免费获取专业版本,安装占用空间较大。vscode可以用于编辑、调试多种语言的程序,拥有数量庞大且功能丰富的插件库(许多常用功能确实是由插件实现),占用空间小。

        深入来看,PyCharm 在功能的全面性和深度上有一定优势,尤其适合大型复杂项目的开发(毕竟是专门写python的,名字也可以看出)。而 VSCode 则以其轻量级、快速启动和丰富的插件生态系统受到广泛欢迎,对于小型项目和喜欢自定义开发环境的开发者来说是一个很好的选择。具体使用哪个工具取决于个人的开发需求和偏好。

        但在后续使用中也会有一些区别,先介绍出来,读者按需选择合适软件:希望远程使用远程算力服务器运行程序时,pycharm是要在本地进行代码修改,保存,并提交(同步)到远程服务器后,才可运行(必须有一个本地与远程的映射)。vscode则可以连接至远程服务器后,直接修改在编辑器远程服务器文件。

        对于进行数据处理和机器学习等任务,我们常用的还有jupyter notebook(就在anaconda主页里即可找到),这是一款基于浏览器界面的应用,主要特点在于其交互性,即每一行代码都可以获得即时的输出反馈并对程序修改,显然其比python自带的交互解释器功能强大(后者无法修改执行过的代码),在数据科学中应用广泛。

        在anaconda中直接点击jupyter notebook的launch即可启动(这里其名字为Notebook),。此时默认工作目录可能固定为当前系统用户的根文件夹下。(进入程序后,显示的文件都是文档、下载、桌面这些文件夹。。。),如果只准备写一个单一文件,则还可以,但是对于一些项目来说可能有些不便。

        指定目录的打开方式为在命令行中进入某个conda环境(base也可),通过cd命令切换到指定文件夹中,使用jupyter notebook命令在该目录中启动。

conda activate MachineLearning

cd ./Desktop/project01

jupyter notebook

4-3 复杂一点的应用-以yolov8为例

        这里再稍微复杂一点的例子,因为可能读到着读者没什么动力了,其实当我们安装好了python,我们就有了一可以实现很多事情的工具,我们的思路也应开进一步打开,举一个小例子yolov8,这是一个计算机视觉领域的深度学习模型,有图像分类、分割、目标检测等功能,其身主要是做目标检测任务.这是它的在github的链接:
https://github.com/ultralytics/ultralyticsNEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite - ultralytics/ultralyticsicon-default.png?t=O83Ahttps://github.com/ultralytics/ultralytics        当然,你可能还不会用github,没关系,我们可以下载他的zip:        实际上,如果你只是自己操作,而没有共享项目,这样似乎就足够了。

        因为这个项目的完整性很好,开发者也很贴心准备了第三方库,我们可以通过pip安装它,甚至不用下载github上的项目也可以使用(但是许多项目不是这样),这一点文档里写明了:

        下载好后,在其根目录下新建程序(就跟上面一样,新建文本,复制,改名这一个流程)。这样就完成了yolov8基本模型在coco目标检测数据集上的训练。如果你可已整理一个与coco格式一致的数据级,那么你稍作修改就可以训练出自己的模型了,进一步地,修改模型结构、改一些参数或添加一些“注意力机制”模块,或许就可以投一些简单期刊进行尝试了。

#代码来自yolov8文档

#从某个库引入某个模块,如果只是解压了zip,
#需要在 ultralytics 文件夹同级目录放置该文件
#否则无法找到ultralytics ,如果用pip安装了,则没有这个要求
from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n.pt")

# Train the model
train_results = model.train(
    data="coco8.yaml",  # path to dataset YAML
    epochs=100,  # number of training epochs
    imgsz=640,  # training image size
    device="cpu",  # device to run on, i.e. device=0 or device=0,1,2,3 or device=cpu
)

# Evaluate model performance on the validation set
metrics = model.val()

# Perform object detection on an image

#修改为你的图片路径
results = model("path/to/image.jpg")
results[0].show()

# Export the model to ONNX format
path = model.export(format="onnx")  # return path to exported model

5 思考

        1,如果可以,你会将anaconda的虚拟环境添加到环境变量中吗,这样操作是好还是不好。

        2,你还发现了哪些在github上可以拿来就用,增加成就感的项目呢?这里有一个github榜单供参考,不会使用git的读者,可以按上述的压缩包方法下载一些项目尝试运行。

GitHub - GrowingGit/GitHub-Chinese-Top-Charts: :cn: GitHub中文排行榜,各语言分设「软件 | 资料」榜单,精准定位中文好项目。各取所需,高效学习。:cn: GitHub中文排行榜,各语言分设「软件 | 资料」榜单,精准定位中文好项目。各取所需,高效学习。 - GrowingGit/GitHub-Chinese-Top-Chartsicon-default.png?t=O83Ahttps://github.com/GrowingGit/GitHub-Chinese-Top-Charts?tab=readme-ov-file

-------------------------------------------------------------------------------------------------------------------------

        关于python与机器学习进一步的内容将在后续文章中介绍,这些内容包括本文提及了的pycharm、vscode、jupyter notebook的使用方法,python的基础语法,和本文尚未提及的机器学习算法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不想改代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值