2021-03-03学习python第二天

<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安装完成。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,393评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,790评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,391评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,703评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,613评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,003评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,507评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,158评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,300评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,256评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,274评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,984评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,569评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,662评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,899评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,268评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,840评论 2 339

推荐阅读更多精彩内容

  • 1.1 Python的基本概念 python是极少数兼具简单与功能强大的编程语言,专注于解决问题而非语法。 Pyt...
    八神庵2020阅读 223评论 0 1
  • 最近学习的知识点,为防止遗忘,因此在这里做个小结,顺便复习。 一、计算机语言 1.1 计算机语言的基本概念 计算机...
    Py量量风阅读 277评论 0 2
  • Python第二课一、Python语言1.Python语言的基本概念2.解释型和编译型语言的区别3.Python的...
    肯定是王珂阅读 224评论 0 0
  • 1.Python语言 1.1 Python语言的基本概念 Python 是一种极少数能兼具 简单 与 功能强大 的...
    扶离取闹阅读 172评论 0 1
  • 1.python语言 1.1python语言的基本概念 python是一种极少数能兼具简单而又功能强大的编程语言。...
    可笑_673c阅读 83评论 0 0