热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2.python要点

1.python语言概述1.1python语言的基本概念.python是一种极少数的能兼具、简单与功能强大的编程语言。你将惊异于发现你使用的这门编程语言是如此简单,

1.python语言概述


1.1 python语言的基本概念

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

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

. python的创造者 吉多 . 范罗苏姆(Guido van ROSSum) 采用BBC 电视节目蒙提 . 派生的飞行马戏团(Monty Python’s Flying circus ,一译巨蟒剧团)》 的名字来为这门编程语言命名。


1.2 python 的特色

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


1.3 python的发展及应用

python的发展及应用
. python的应用

常规软件开发

科学计算

自动化运维

自动化测试

WEB开发

人工智能


1.4 python之禅

(输入 import this)
美胜于丑陋(python 以编写优美的代码为目标)

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

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

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

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

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

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

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

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

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

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

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

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

命名空间是一种绝妙的理念,我们应当多家利用(倡导与号召)


2.Windows下python环境搭建


2.1 搭建环境


python的解释器

. 环境搭建就是安装python解释器
. python的解释器分类:
Cpython(官方就是用我们这个版本)用C语言编写的Python解释器。

pypy 用python语言编写的python解释器。

Jpython 用Java语言编写的python解释器。


2.2 搭建环境

python官网链接: 点击进入

下载安装包
下载

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
安装成功

在这里插入图片描述


2.3 python的交互模式

在这里插入图片描述
. win键 + R —> cmd —> 回车 —>输入python

. 命令结构

. python 3.6.5 == 版本

. Type"help",“copyright” == 版权声明

. >>> == 命令提示符(在后面可以直接输入指令)


2.4 工具的使用


pip 介绍

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

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

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


pip 使用

在命令行下,输入pip,回车可以看到帮助说明:
在这里插入图片描述


查看pip版


  1. pip -v
  2. pip -version

在这里插入图片描述


普通安装

1. pip install requests

指定版本安装

1. pip install robotframework==2.87

卸载已安装的库

pip uninstall requests
1. pip install somepackage
2. pip install somepackge==1.0.5
3. pip install somepackage>=1.0.6

升级指定的包&#xff0c;通过&#61;&#61;&#xff0c;>&#61;,<&#61;&#xff0c;>,<来指定一个版本号。


列出已安装的库

1.pip list

显示所安装包的信息

pip show package

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

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

在这里插入图片描述


批量下载导出来的包

1. pip install -r packages.txt

使用wheel文件安装

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

地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
在这里插入图片描述
可以使用 pip install pillow-4.2xxxxxxx.whl的方式离线进行安装

. 第一步 安装 wheel
在这里插入图片描述
. 第二步 找到下载的whl文件的目录进行安装&#xff08;以桌面为例&#xff09;
在这里插入图片描述
. 第三步执行命令安装
在这里插入图片描述


2.5 换源安装


  1. 豆瓣&#xff1a;http://pypi.douban.com/simple/
  2. 阿里&#xff1a; http://mirrors .aliyun.com/pypi/simple/
  3. 中国科学技术大学&#xff1a;http://pypi.mirrors.ustc.edu.cn/simple/
  4. 清华&#xff1a;http://pipy.tuna.tsinghua.edu.cn/simple/
  5. 列如&#xff1a;pip install some package -i http://pypi.douban.com/simple

python 的第一个程序

. 可以在交互模式实现
. 可以用python自带的idle
. 可以用高级开发工具如&#xff1a;pycharm


3. pycharm简介

pycharm 是python 最著名的集成开发环境IDE之一&#xff0c;由大名鼎鼎的 JetBrains公司开发&#xff0c;如果你用过该公司的其他产品&#xff0c;像ltellij IDEA 或者web storm&#xff0c;你将对pycharm 驾轻就熟&#xff0c;该公司旗下的产品在功能布局及设置等方面都保持了很好的一致性。


3.1 什么是IDE&#xff1f;

IDE是集成开发环境的英文缩写&#xff08;lntegrated Development Environment&#xff09;&#xff0c;所谓的集成开发环境就是将你在开发过程所需要的工具或功能集成到了一起&#xff0c;比如&#xff1a;代码编写、分析、编译、调试等功能&#xff0c;从而最大化地提高对开发者的工作效率。

IDE 通用特点&#xff1a;


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

3.2 pycharm 的版本


  1. 目前pycharm 共有三个版本&#xff1a;professional、community和 Edu版。
    community 和Edu 版本是开源项目&#xff0c;它们是免费的Edu 版完整的引用了 community 版所有的功能。同时集成了一个python的课程学习平台&#xff0c;比较适合从未接触过编程语言的小白。

  2. professsional 版是收费的&#xff0c;下面是 profession 与 community 版的对比&#xff0c;后者相对前者缺少了很多重要的功能&#xff0c;对于开发人员还是强烈建议选择 professional 版本&#xff0c;本课程中也将以 professional 版本为例进行讲解。

在这里插入图片描述


3.3 其他IDE 对比


1. spyder

在这里插入图片描述
在 IDE 市场也是大名鼎鼎&#xff0c;主要为科学计算而开发的。它是开源工具&#xff0c;可运行在 Linux 、Windows 、Mac OS上
优点&#xff1a;


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

缺点&#xff1a;


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

TIps&#xff1a;如果主要用于深度学习及数据分析&#xff0c;建议安装 Anaconda,其包含了许多用于科学计算的工具&#xff0c;spyder 也被包括在内。


3.4 pyDev &#43; EClipse

在这里插入图片描述
Eclipse 是Java语言 的IDE&#xff0c;PyDev 是其中的一个插件&#xff0c;安装后&#xff0c;可以在Eclispe 中进行python 的来发工作。
优点


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

缺点&#xff1a;
4. 如果应用程序太大&#xff0c;使用多个插件&#xff0c;pyDev IDE 的性能会降低。
5. 作为插件&#xff0c;在实际使用过程不是很稳定。

在这里插入图片描述
官网 https://www.pydev.org/


3.5 IDLE

在这里插入图片描述
如果你的电脑上安装了 Python&#xff0c;同时也就安装了 IDLE。初学者可以利用它方便地创建、运行、测试 Python 程序。
优点&#xff1a;


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

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

在这里插入图片描述


3.6 wing

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


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

缺点&#xff1a;
4. 在科学计算方面没有集成一些常用工具与库&#xff1b;
5. 商业版本功能强大&#xff0c;也意味占用内存比较大
在这里插入图片描述
官网 http://wingware.com/


3.7 为什么是 Pycharm

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


  1. 智能代码编辑功能&#xff1a; 自动代码补全&#xff0c;你继续输入时&#xff0c;拼写提示列表会缩小范围以匹配你输入的字符。 具有实时编辑功能&#xff0c;立即自动保存编辑内容&#xff1b;
  2. 专业工具集成&#xff1a; 几乎集成了程序员可能希望的所有功能&#xff0c; 比如集成单元测试&#xff0c;代码检测&#xff0c;集成版本控制&#xff0c;代码重构工具等等&#xff1b;
  3. 支持各种 Web 开发语言&#xff1a;如 HTML/CSS、Javascript、Angular JS、node JS 等。Pycharm 还支持多种类型的 Web 开发框架和广泛的 Web 模板&#xff1b;
  4. 科学计算&#xff1a;集成了 IPython Notebook&#xff0c;其作为交互式的 python 控制台&#xff0c;支持各种工具如 Anaconda, NumPy, Matplotlib 等等&#xff1b;
  5. 可定制 &#43; 跨平台&#xff1a; 可以自定义UI界面&#xff0c;可运行在 Linux, Windows and Mac OS 上&#xff1b;
  6. 远程调试&#xff1a;通过配置 Docker 或者 Vagrant 及 SSH, 支持在本地使用远程服务器的 Python 解释器和环境进行调试和运行&#xff0c; 这是其它大多数其它 IDE 不具备的功能&#xff1b;
  7. 最流行&#xff1a;意味着当你在使用中遇到问题&#xff0c;意味着可以在互联网上更快的找到解决方案相对于其它 IDE。

PyCharm 主界面
在这里插入图片描述


3.8课程内容

本课程主要目的是帮助学习者快速熟悉 IDE&#xff0c;掌握使用中的一些技巧&#xff0c;课程内容大致如下&#xff1a;
在这里插入图片描述


4. pycharm的安装和配置


4.1 pycharm的安装

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
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 --
    . # &#64;Time : ${DATE} ${TIME}
    . # &#64;Author : Jerry
    . # &#64;File : ${NAME}.py
    . # &#64;Software: ${PRODUCT_NAME}
  8. 修改字体编码 File–settings–Editor—Code Style — File Encoding — Project Encoding

5. 常见问题总结


5.1 pip版本比较低安装命令输入错误问题描述


问题描述

在这里插入图片描述


解决方案

pip版本太低 输入升级指令 python -m pip install --upgrade pip 然后在去安装
直接 pip install requests &#xff08;不需要在后面加东西&#xff09;
或者通过换源方式去安装 pip install SomePackage -i https://pypi.douban.com/simple


5.2 网速延迟问题

在这里插入图片描述


解决方案

1. 多安装几次
2. 通过换源方式去安装 pip install SomePackage -i https://pypi.douban.com/simple


5.3 解释器配置问题

问题描述
在这里插入图片描述

解决方案
在这里插入图片描述
print(m)不要空格&#xff0c;随意空格和缩进而引起的语法错误


5.4 安装了pycharm之后桌面右键选项框变大了怎么做&#xff1f;

windows键&#43;R键输入regedit

按照以下路径&#xff1a;
HKEY_CLASSES_ROOT\Directory\Background\shell\PyCharm Community Edition,找到PyCharm Community Edition文件夹&#xff0c;删除即可


推荐阅读
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • 2020年第十一届蓝桥杯决赛JAVA B G题“皮亚诺曲线距离“的个人题解目录
    本文是2020年第十一届蓝桥杯决赛JAVA B G题“皮亚诺曲线距离“的个人题解目录。文章介绍了皮亚诺曲线的概念和特点,并提供了计算皮亚诺曲线上两点距离的方法。通过给定的两个点的坐标,可以计算出它们之间沿着皮亚诺曲线走的最短距离。本文还提供了个人题解的目录,供读者参考。 ... [详细]
  • 也就是|小窗_卷积的特征提取与参数计算
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了卷积的特征提取与参数计算相关的知识,希望对你有一定的参考价值。Dense和Conv2D根本区别在于,Den ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文介绍了使用Python解析C语言结构体的方法,包括定义基本类型和结构体类型的字典,并提供了一个示例代码,展示了如何解析C语言结构体。 ... [详细]
  • 2022年的风口:你看不起的行业,真的很挣钱!
    本文介绍了2022年的风口,探讨了一份稳定的副业收入对于普通人增加收入的重要性,以及如何抓住风口来实现赚钱的目标。文章指出,拼命工作并不一定能让人有钱,而是需要顺应时代的方向。 ... [详细]
  • 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件
    本文旨在全面介绍Windows内存管理机制及C++内存分配实例中的内存映射文件。通过对内存映射文件的使用场合和与虚拟内存的区别进行解析,帮助读者更好地理解操作系统的内存管理机制。同时,本文还提供了相关章节的链接,方便读者深入学习Windows内存管理及C++内存分配实例的其他内容。 ... [详细]
author-avatar
幽雅闲居xl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有