• Python(二)PyCharm


    一:设置文件模板

    创建文件时在文件的最上面自动使用模板。
    在这里插入图片描述

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    # @author: monday
    # @time: ${DATE} ${TIME}
    # @desc: 
    '
    运行

    二:快捷键

    • Ctrl + Alt + V :自动将语句赋值给一个变量,将光标放到行的末位。

    • Alt + 单击每一行:单击的每一行都有光标,常用于同时操作多行代码。通过鼠标单击位置来确定光标位置,同一行也可以有多个光标。
      在这里插入图片描述

    • Ctrl + Alt + Shift + 鼠标左键拖动(Mac)、Shift + Alt + 鼠标左键拖动Windows):同时选择多行。与Alt+鼠标单击不同的是这种光标只能定位在同一列

    在这里插入图片描述

    • Shift + F10:Run运行。
    • Shift + F9:Debug调试。

    三:设置国内阿里云镜像

    # 查看镜像列表
    pip config list
    
    # 设置为aliyun镜像
    # 也可以直接修改~/.config/pip/pip.conf这个文件
    # 阿里云镜像    https://mirrors.aliyun.com/pypi/simple/
    # 清华大学镜像  https://pypi.tuna.tsinghua.edu.cn/simple/
    pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
    
    # 取消全局配置
    pip config unset global.index-url
    
    # 临时从阿里云上安装
    pip install -i https://mirrors.aliyun.com/pypi/simple/包名
    
    

    在这里插入图片描述

    四:使用pip安装第三方库

    4.1 pip手动单个安装

    pip是一个现代的,通用的 Python 包管理工具。提供了对Python 包的查找、下载、安装、卸载的功能。

    命令描述
    help帮助显示命令的帮助 (Show help for commands.)
    config配置本地和全局变量(常用配置仓库的镜像地址)
    list列表列出已安装的包 ( List installed packages.)
    install安装包安装 (Install packages.)
    uninstall卸载卸载包 (Uninstall packages.)
    freeze冻结按需求格式安装的包的输出 (Output installed packages in requirements format.)
    check检查已安装的软件包是否具有兼容的依赖项 ( Verify installed packages have compatible dependencies.)
    show显示已安装软件包的信息 ( Show information about installed packages.)
    download下载下载包 (Download packages.)
    search搜索PyPI查找包 (Search PyPI for packages.)
    wheel根据您的需求构建轮子 (Build wheels from your requirements.)
    hash包存档的哈希计算值 ( Compute hashes of package archives.)
    completion用于命令完成的辅助命令 ( A helper command used for command completion.)
    debug显示对调试有用的信息 ( Show information useful for debugging.
    # 查看版本和路径
    pip --version
    
    # 升级pip --upgrade 或 -U 都可以
    pip install --upgrade pip
    pip install -U pip
    
    # 帮助,查看命令的选项 
    pip help
    
    
    # 设置为aliyun镜像
    # 也可以直接修改~/.config/pip/pip.conf这个文件
    # 阿里云镜像    https://mirrors.aliyun.com/pypi/simple/
    # 清华大学镜像  https://pypi.tuna.tsinghua.edu.cn/simple/
    # 豆瓣         https://pypi.douban.com/simple/
    # 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
    # 华中理工大学:http://pypi.hustunique.com/
    # 山东理工大学:http://pypi.sdutlinux.org/ 
    pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
    
    # 取消全局配置
    pip config unset global.index-url
    
    # 查看镜像列表
    pip config list
    
    # 查看已经安装的包的名字和版本号
    pip list
    # 查看哪些包可以升级
    pip list -o
    
    # pip search命令会报错,需要先安装pip-search,然后使用pip-search来查询
    pip install pip-search
    pip-search requests
    
    # 安装最新版本的库
    pip install 包名
    # 安装指定版本的库
    pip install 包名==2.28.1
    # 安装最小版本(
    # == 指定具体版本号
    # >= 指定最低版本号
    # <= 指定最高版本号
    # > 不低于某个版本
    # < 不高于某个版本)
    pip install '包名>=2.28.1'
    # 临时从阿里云上安装
    pip install -i https://mirrors.aliyun.com/pypi/simple/包名
    # 升级版本号(通过使用==, >=, <=, >, < 来指定一个版本号)
    pip install --upgrade 包名
    # 卸载库
    pip uninstall 包名
    
    
    # 下载某个包但不安装包
    pip download 包名 -d "下载路径"
    
    # 检查安装的包是否有版本冲突
    pip check
    # 检查某个包是否有版本冲突
    pip check 包名
    
    
    # 查看某个库的详情
    pip show 包名
    
    
    
    # 将项目中的所有第三方包的包名和版本号写入到requirements.txt文件中
    pip freeze > requirements.txt
    
    # 批量安装requirements.txt文件中的列举的所有包
    pip install -r requirements.txt
    

    4.2 pip自动批量安装

    import pip
    
    try:
        import requests
        import numpy as np
        import pandas as pd
    except ImportError:
        pip.main(["install", "requests", "numpy", "pandas"])
    '
    运行

    4.3 os自动批量安装

    import os
    
    libs = ['requests', 'numpy', 'pandas']
    for lib in libs:
        os.system('pip install ' + lib)
    '
    运行

    五:使用PyCharm安装第三方库

    Interpreter Settings -> + -> Manage Repositories -> 搜索安装(安装时可以选择版本号及仓库等)
    在这里插入图片描述
    在这里插入图片描述
    仓库地址可以是阿里云镜像仓库、清华python仓库等其他第三方仓库地址。
    在这里插入图片描述

    Options: 选项,可以指定临时仓库地址等参数,如 -i https://pypi.tuna.tsinghua.edu.cn/simple/
    在这里插入图片描述

    六:第三方库管理

    6.1:简介

    6.1.1 常用包管理工具

    依赖管理就是管理第三方库(安装、卸载等),用的最多的就是将第三方库从远程仓库中下载到本地供当前项目使用。

    • Java可以通过Maven(pom.xml)、Gradle(build.gradle)来管理依赖。
    • 前端Vue通过npm(package.json)来管理第三方插件。
    • Python通过Virtualenv(requirements.txt)、PipenvPoetryConda这四种来管理第三方库。

    6.1.2 依赖管理要解决的问题

    当多个项目需要使用不同的第三方库时就会出现这样的问题:如A项目开发的比较早使用的是Python2.7版本,该项目使用的第三方依赖也是比较低的版本;B项目是后来开发的使用Python最新版本Python3.8以及目前最新的版本的相关依赖。这时就要配置每个项目使用的每个第三方库对应的版本号。

    依赖管理就是配置每个项目使用了哪些第三方库以及这些第三放库对应的版本号。

    6.2 Virtualenv 虚拟环境

    Virtualenv(virtual environment) : 虚拟环境解决的办法是为每个项目创建一套独立的环境,各自项目使用各自的环境,这样每个项目的第三方库就互不影响了。 每套环境包含Python具体的环境(如Python3.8)以及需要安装的第三方库。 创建好虚拟环境然后指定当前项目对应的虚拟环境就行了, 这样项目所使用的依赖只需要去各自的虚拟环境venv下找就行了。

    6.2.1 使用PyCharm创建虚拟环境Virtualenv

    使用PyCharm创建项目时会让你先选择依赖管理,这里选择Virtualenv,项目创建完后会自动创建一个venv目录。项目创建换成后会自动激活当前虚拟环境,然后点击最下方的Terminal通过pip命令就可以安装第三方依赖。
    在这里插入图片描述
    在这里插入图片描述
    通过Perferences可以查看当前项目使用的虚拟环境。
    在这里插入图片描述

    6.2.2 使用命令创建虚拟环境

    以上操作都是IDE帮助我们自动完成的,如创建venv目录,激活当前虚拟环境。对于老项目如果没有使用虚拟环境也可以通过命令行来添加虚拟环境。

    1. 创建虚拟目录
    # python3 -m venv 虚拟环境名称,名称是随意起的,这里起的是tutorial-env
    python3 -m venv tutorial-env
    
    1. 激活虚拟环境
      当激活虚拟环境时命令行上会有个虚拟环境名前缀。
    # Unix或MacOS上激活虚拟环境
    source tutorial-env/bin/activate
    
    # windows上激活虚拟环境
    tutorial-env\Scripts\activate.bat
    
    1. 安装第三方库
    
    # 安装第三方库
    pip install requests
    
    # 安装指定版本的第三方库
    pip install requests==2.6.0
    

    在这里插入图片描述

    在这里插入图片描述

    6.2.3 Virtualenv的缺点

    1. 如果安装新的第三方库或者更新的版本号都要手动执行pip freeze > requirements.txt命令来维护第三方库列表,容易造成忘记更新requirements.txt文件。
    2. requirements.txt会记录安装的第三方库所依赖的其它第三方库。如上面只安装了requests却在requirements.txt记录了5个相关依赖。
    3. Virtualenv会在项目中生成一个venv目录,venv包含了所有第三方库及Python环境,会造成项目比较大。

    6.3 Pipenv

    Pipenv是对Virtualenv的再封装,解决了Virtualenv的所有缺点。

    6.3.1 安装pipenv

    pipenv默认是没有安装的,全局安装pipenv。

    sudo -H pip install -U pipenv
    

    6.3.2 PyCharm选择Pipenv环境

    在这里插入图片描述

    6.3.3 修改源

    在这里插入图片描述
    修改默认的源为阿里云。

    [[source]]
    url = "https://mirrors.aliyun.com/pypi/simple/"
    verify_ssl = true
    name = "aliyun"
    

    6.3.4 安装第三方库

    Terminal中安装第三方库requests。

    pipenv install requests
    

    在这里插入图片描述

    6.3.5 Pipfile和Pipfile.lock

    pipenv只生成Pipfile和Pipfile.lock两个文件, 并没有像Virtualenv方式在项目目录下生成venv目录,虚拟环境所需要的第三方库会保存到其它目录下。

    • Pipfile: 用于记录所引用的第三方库,分开发包和正式包。Pipfile文件只记录install的库,安装的库所依赖的库不会在此文件中记录,
    • Pipfile.lock文件:用于记录第三方库对应的版本号,该文件会记录install所依赖的库,例如安装requests库也会依赖urllib3等。

    6.3.6 pipenv相比venv的好处

    • pipenv使用Pipfile文件来代替简陋的requirements.txt 文件。
    • pipenv区分开发环境和正式环境。
    • pipenv只记录install的依赖,不记录第三方依赖的库。
    • pipenv虚拟环境目录不在当前项目中。

    6.3.7 pipenv命令

    # 查看pipenv安装的第三方库的位置
    pipenv --venv
    /Users/mengday/.local/share/virtualenvs/demo2-UnCUYduF
    
    # 进入pipenv环境
    pipenv shell
    
    # 安装第三方库
    pipenv install requests
    
    # 显示安装的库及依赖的库的信息
    pipenv graph
    

    在这里插入图片描述

    6.4 Anaconda

    Anaconda是包管理器和环境管理器。Anaconda预安装了很多数据分析相关的依赖。 Anaconda 一般用于数据分析相关的项目。

    Anaconda安装后会有一个默认的环境base(root), 该环境已经安装了Python和其它常用的第三方库, 可以通过Anaconda Navigator来管理环境,也可以通过命令行来管理环境。

    conda 是 Anaconda 下用于包管理和环境管理的工具,功能上类似 pip 和 vitualenv 的组合。

    # 基于python3.7版本创建一个名字为python37的环境
    conda create --name python37 python==3.7
    
    # 激活此环境
    conda activate python37
    
    # 退出当前环境
    conda deactivate 
    
    # 删除该环境
    conda env remove -n python37
    
    # 查看所有安装的环境以及环境安装的目录
    conda info -e
    
    
    # 安装 requests 
    conda install requests
    
    # 查看已安装的包
    conda list 
    
    # 包更新
    conda update requests
    
    # 删除包
    conda remove requests
    
    
    # 更新conda本身
    conda update conda
    
    # 更新anaconda 应用
    conda update anaconda
    
    # 更新anaconda 应用
    conda update anaconda
    

    在这里插入图片描述
    常见一个环境默认安装了17个第三方库。
    在这里插入图片描述

    七:Python交互终端

    • python:在cmd中输入python进入,但是这种体验不好,多行代码写错了,没法返回到其它行。
    • ipython:需要先安装 pip3 install ipython , 多行代码光标可以移动。
      在这里插入图片描述
  • 相关阅读:
    源代码加密软件怎么防止企业数据泄漏
    JAVA编程规范之ORM 映射
    为什么消费返利模式层出不穷?这个消费返利玩法值得你借鉴
    为什么会有流处理?
    普通话水平测试用朗读作品60篇-(练习版)
    【Python】 - Python的内置函数isinstance()中的参数classinfo一共有多少种,可以判断多少种类型?
    使用 NVIDIA NIM 部署生成式 AI 的简单指南
    超详细!一步到位!MySQL安装和基本使用
    正厚干货 | Git客户端用户使用指南
    MySQL-三大日志
  • 原文地址:https://blog.csdn.net/vbirdbest/article/details/127036491