美文网首页
2021-03-03学习python第二天

2021-03-03学习python第二天

作者: 朋友喊我王大志 | 来源:发表于2021-03-03 23:15 被阅读0次

    <meta name="source" content="lake">

    一.Python语言概述

    Python语言

    Python语言的基本概念

    • Python 是一种极少数能兼具 简单 与 功能强大 的编程语言。你将惊异于发现你正在使用的这门编程语言是如此简单,它专注于如何解决问题,而非拘泥于语法与结构

    • 官方对 Python 的介绍如下:

    • Python 是一款易于学习且功能强大的编程语言。 它具有高效率的数据结构,能够简单又有效地实现面向对象编程。Python 简洁的语法与动态输入之特性,加之其解释性语言的本质,使得它成为一种在多种领域与绝大多数平台都能进行脚本编写与应用快速开发工作的理想语言

    • Python 的创造者吉多·范罗苏姆(Guido van Rossum)采用 BBC 电视节目《蒙提·派森的飞行马戏团(Monty Python's Flying Circus,一译巨蟒剧团)》的名字来为这门编程语言命名

    Python 的特色

    • 简单
    • 易于学习
    • 自由且开放
    • 跨平台
    • 可嵌入性
    • 丰富的库

    Python的发展及应用

    image.png image.png
    • Python的应用

    • 常规软件开发

    • 科学计算

    • 自动化运维

    • 自动化测试

    • WEB开发

    • 网络爬虫

    • 数据分析

    • 人工智能

    Python之禅

    (输入 import this)

    美胜于丑陋(Python 以编写优美的代码为目标)

    明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似)

    简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现)

    复杂胜于凌乱(如果复杂不可避免,那代码间也不能有难懂的关系,要保持接口简洁)

    扁平胜于嵌套(优美的代码应当是扁平的,不能有太多的嵌套)

    间隔胜于紧凑(优美的代码有适当的间隔,不要奢望一行代码解决问题)

    可读性很重要(优美的代码是可读的)

    即便假借特例的实用性之名,也不可违背这些规则(这些规则至高无上)

    不要包容所有错误,除非你确定需要这样做(精准地捕获异常,不写 except:pass 风格的代码)

    当存在多种可能,不要尝试去猜测而是尽量找一种,最好是唯一一种明显的解决方案(如果不确定,就用穷举法)

    虽然这并不容易,因为你不是 Python 之父(这里的 Dutch 是指 Guido )

    做也许好过不做,但不假思索就动手还不如不做(动手之前要细思量)

    如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然(方案测评标准)

    命名空间是一种绝妙的理念,我们应当多加利用(倡导与号召)
    <meta name="source" content="lake">

    二.搭建环境

    Python的解释器

    • 环境搭建就是安装Python的解释器

    • Python的解释器分类:

    • CPython(官方我们用的就是这个版本) 用c语言编写的Python解释器

    • PyPy 用Python语言编写的Python解释器

    • JPython 用Java编写的Python解释器

    搭建Python环境

    官网链接

    下载安装包

    image.png image.png image.png image.png image.png image.png

    安装成功

    image.png image.png

    Python的交互模式

    image.png
    • win键 + R --> CMD --> 回车 --> 输入Python
    • 命令行结构
    • Python 3. 6. 5 .... ---> 版本
    • Type "help","copyright".....---> 版权声明
    • ---> 命令提示符 (在后面可以直接输入指令)

    pip工具的使用

    pip介绍

    我们都知道python有很多的第三方库或者说是模块。这些库针对不同的应用,发挥不同的作用。我们在实际的项目中肯定会用到这些模块。那如何将这些模块导入到自己的项目中呢?

    Python官方的PyPi仓库为我们提供了一个统一的代码托管仓库,所有的第三方库,甚至你自己写的开源模块,都可以发布到这里,让全世界的人分享下载 。

    python有两个著名的包管理工具easy_install和pip。在python 2中easy_install是默认安装的,而pip需要我们手动安装。随着Python版本的提高,easy_install已经逐渐被淘汰,但是一些比较老的第三方库,在现在仍然只能通过easy_install进行安装。目前,pip已经成为主流的安装工具,自Python 2 >=2.7.9或者Python 3.4以后默认都安装有pip

    pip使用

    在命令行下,输入pip,回车可以看到帮助说明:

    1530105181155.png

    查看pip版本

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip -V pip --version</pre>

    image_1567694929372.png

    普通安装

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip install requests </pre>

    指定版本安装

    pip install robotframework==2.8.7

    卸载已安装的库

    pip uninstall requests

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip install SomePackage pip install SomePackage==1.0.5 # 指定版本 pip install 'SomePackage>=1.0.6' # 最小版本</pre>

    升级指定的包,通过使用==, >=, <=, >, < 来指定一个版本号。

    列出已经安装的库

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip list</pre>

    显示所安装包的信息

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip show package</pre>

    将已经安装的库列表保存到文本文件中

    pip freeze > D:\桌面\install.txt

    1530105239166.png

    批量下载导出来的包

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">pip install -r packages.txt</pre>

    使用wheel文件安装

    除了使用上面的方式联网进行安装外,还可以将安装包也就是wheel格式的文件,下载到本地,然后使用pip进行安装。比如我在PYPI上提前下载的pillow库的wheel文件,后缀名为whl

    地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/

    1530105279331.png

    可以使用pip install pillow-4.2xxxxxxx.whl的方式离线进行安装

    • 第一步 安装 wheel
    image.png
    • 第二步 找到下载的whl文件的目录进行安装(以桌面为例)
    image.png
    • 第三步 执行命令安装
    image.png

    换源安装

    豆瓣 :http://pypi.douban.com/simple/

    阿里 :http://mirrors.aliyun.com/pypi/simple/

    中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/simple

    清华:https://pypi.tuna.tsinghua.edu.cn/simple

    例如:pip install SomePackage -i https://pypi.douban.com/simple

    Python的第一个程序

    • 可以在交互模式实现
    • 可以用Python自带的idle
    • 可以用高级开发工具如 : PyCharm
      <meta name="source" content="lake">

    三.Pycharm简介

    PyCharm 是 Python 最著名的集成开发环境 IDE 之一,由大名鼎鼎的 JetBrains 公司开发,如果你用过该公司其它产品,像 Intellij IDEA 或者 WebStorm,你将对 PyCharm 驾轻就熟,该公司旗下产品在功能布局及设置等方面都保持了很好的一致性。

    1. 什么是 IDE?

    IDE 是集成开发环境的英文缩写 (Integrated Development Environment),所谓集成开发环境就是将你在开发过程中所需要的工具或功能集成到了一起,比如:代码编写、分析、编译、调试等功能,从而最大化地提高开发者的工作效率。

    IDE 通用特点

    1. 提供图形用户界面,在 IDE 中可以完成开发过程中所有工作;
    2. 支持代码补全与检查,并提供快速修复选项;
    3. 内置解释器与编译器;
    4. 功能强大的调试器,支持设置断点与单步执行等功能。

    2. PyCharm 的版本

    目前 PyCharm 共有三个版本:ProfessionalCommunityEdu 版。

    CommunityEdu 版本是开源项目,它们是免费的。 Edu 版完整的引用了 Community 版所有的功能。同时集成了一个python的课程学习平台,比较适合从未接触过的任何开发语言的小白。

    Professional 版是收费的,下面是 Profession 与 Community 版的对比,后者相对前者缺少很多重要功能,对于开发人员还是强烈建议选择 professional 版本,本课程中也将以 Professional 版本为例进行讲解。

    image

    图片来源:https://www.jetbrains.com/pycharm/ 官网

    3. 其它 IDE 对比

    3.1 Spyder

    image

    在 IDE 市场也是大名鼎鼎, 主要是为科学计算而开发的。它是开源工具, 可运行在 Linux, Windows and Mac OS 上。

    优点

    1. 在查找和消解除代码性能链瓶颈方面非常高效;
    2. 可即时查看任何文档并修改自己的文档。
    3. 支持扩展插件。

    缺点

    1. 同时调用太多插件时,其性能下降比较多;
    2. 无法配置开发人员想要禁用的警告。

    Tips:如果主要用于深度学习及数据分析,建议安装Anaconda,其包含许多用于科学计算的工具,Spyder 也被包括在内。

    3.2 PyDev + Eclipse

    image

    Eclipse 是 Java 语言的 IDE,PyDev 是其一个插件,安装后,可以在 Eclispe 中进行 Python 的开发工作。

    优点

    1. 提供了代码语法高亮显示、解析器错误、代码折叠和多语言支持;
    2. 具有良好的界面视图,提供一个交互式控制台;
    3. 支持 CPython、Jython、Iron Python 和 Django,并允许在挂起模式下进行交互式测试。

    缺点

    1. 如果应用程序太大,使用多个插件,PyDev IDE 的性能会降低;
    2. 作为插件,在实际使用过程中不是很稳定。
    image

    图片来源:http://www.pydev.org 官网

    3.3 IDLE

    image

    如果你的电脑上安装了 Python,同时也就安装了 IDLE。初学者可以利用它方便地创建、运行、测试 Python 程序。

    优点

    1. IDLE 纯粹在 Python 中开发,使用 Tkinter GUI 工具包,也是一个跨平台工具,可以工作在 Windows, macOS 与 Linux 上;
    2. 它具有多窗口文本编辑器的良好功能,具有调用提示、智能缩进、撤消等许多功能;
    3. 它还支持对话框、浏览器和可编辑配置。

    缺点

    1. 它有一些正常的使用问题,有时它缺乏焦点,在代码自动补全方面只支持内置标准库;
    2. 在界面上缺少一些基本的设计,比如缺少行号。
    image

    3.4 Wing

    image

    也是在当今市场上流行和强大的 IDE,具有许多适合 Python 开发人员要求的功能, 可以工作在 Windows, macOS 与 Linux 上。 它是商业软件,Wing Personal 与 Wing 101 两个版本是为了学生与初学者的免费版本。

    优点

    1. 在试用版过期的情况下,Wing 为开发人员提供了大约 10 分钟的时间来迁移其应用程序;
    2. 它有一个源浏览器,有助于显示脚本中使用的所有变量;
    3. 功能强大的调试器,提供了一个额外的异常处理选项卡,可帮助开发人员调试代码。

    缺点

    1. 在科学计算方面没有集成一些常用工具与库;
    2. 商业版本功能强大,也意味占用内存比较大。
    image

    图片来源:http://wingware.com 官网

    4. 为什么是 PyCharm?

    上一部分总结了其它 IDE 的优缺点, 相较其它产品,PyCharm 是功能最为完备,用户体验最好的IDE, 适合大型项目的开发。 具体特性如下:

    1. 智能代码编辑功能: 自动代码补全,你继续输入时,拼写提示列表会缩小范围以匹配你输入的字符。 具有实时编辑功能,立即自动保存编辑内容;

    2. 专业工具集成: 几乎集成了程序员可能希望的所有功能, 比如集成单元测试,代码检测,集成版本控制,代码重构工具等等;

    3. 支持各种 Web 开发语言:如 HTML/CSS、Javascript、Angular JS、node JS 等。Pycharm 还支持多种类型的 Web 开发框架和广泛的 Web 模板;

    4. 科学计算:集成了 IPython Notebook,其作为交互式的 python 控制台,支持各种工具如 Anaconda, NumPy, Matplotlib 等等;

    5. 可定制 + 跨平台: 可以自定义UI界面,可运行在 Linux, Windows and Mac OS 上;

    6. 远程调试:通过配置 Docker 或者 Vagrant 及 SSH, 支持在本地使用远程服务器的 Python 解释器和环境进行调试和运行, 这是其它大多数其它 IDE 不具备的功能;

    7. 最流行:意味着当你在使用中遇到问题,意味着可以在互联网上更快的找到解决方案相对于其它 IDE。

    PyCharm 主界面:

    image

    5. 课程内容

    本课程主要目的是帮助学习者快速熟悉 IDE,掌握使用中的一些技巧,课程内容大致如下:
    <meta name="source" content="lake">

    四.PyCharm的安装和配置

    PyCharm的安装

    image.png image.png image.png image.png image.png image.png

    PyCharm的简单配置

    • 1、主题修改 File--settings--apperance--theme

    • 2、代码字体修改 File--settings--Editor-Font

    • 3、关闭更新 File--settings---apperance---System Settings ---Updates --- Automatically check updates for 取消打钩

    • 4、快捷键修改 File--settings---apperance-- Keymap 选择自己习惯的快捷键方式

    • 5、自动导包 File--settings---apperance--General ---Auto Import 打钩

    • 6、进制打开上次的工程 File--settings---apperance---System Settings ---Reopen last project startup

    • 7、修改新建文件文件头 File--settings--Editor---Code Style --- File and Code Templates --- Python Script

    • !/usr/bin/env python

    • -- coding: utf-8 --

    • @Time : {DATE}{TIME}

    • @Author : Jerry

    • @File : ${NAME}.py

    • @Software: ${PRODUCT_NAME}

    • 8、修改字体编码 File--settings--Editor---Code Style --- File Encoding --- Project Encoding
      <meta name="source" content="lake">

    常见问题总结

    逻辑.jpg

    1. pip版本比较低安装命令输入错误

    [图片上传失败...(image-4c7fc8-1614784994159)]

    [图片上传失败...(image-ee549f-1614784994159)]

    问题描述

    image.png

    [图片上传失败...(image-624516-1614784994159)]

    [图片上传失败...(image-4154e1-1614784994159)]

    [图片上传失败...(image-64ce4f-1614784994159)]

    解决方案

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">1 pip版本太低 输入升级指令 python -m pip install --upgrade pip 然后在去安装 2 直接 pip install requests (不需要在后面加东西) 或者通过换源方式去安装 pip install SomePackage -i https://pypi.douban.com/simple </pre>

    2. 网速以及网络延时问题

    问题描述

    image.png

    解决方案

    <pre class="cm-s-default" style="color: rgb(89, 89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">多安装几次 通过换源方式去安装 pip install SomePackage -i https://pypi.douban.com/simple </pre>

    3. 解释器配置问题

    问题描述

    image.png

    解决方案

    image.png

    4. 缩进的错误

    问题描述

    image.png

    解决方案

    image.png

    print(m)不要空格,随意空格和缩进而引起的语法错误

    5 安装了pycharm之后桌面右键选项框变大了怎么做?

    windows键+R键输入regedit

    按照以下路径:

    HKEY_CLASSES_ROOT\Directory\Background\shell\PyCharm Community Edition,找到PyCharm Community Edition文件夹,删除即可


    image.png

    自己的pycharm安装完成。

    相关文章

      网友评论

          本文标题:2021-03-03学习python第二天

          本文链接:https://www.haomeiwen.com/subject/omfhqltx.html