zoukankan      html  css  js  c++  java
  • Day 1 初识python

    1.Python简介

        Python的历史

    1. 1989年圣诞节:Guido von Rossum开始写Python语言的编译器。
    2. 1991年2月:第一个Python编译器(同时也是解释器)诞生,它是用C语言实现的(后面又出现了Java和C#实现的版本Jython和IronPython,以及PyPy、Brython、Pyston等其他实现),可以调用C语言的库函数。在最早的版本中,Python已经提供了对“类”,“函数”,“异常处理”等构造块的支持,同时提供了“列表”和“字典”等核心数据类型,同时支持以模块为基础的拓展系统。
    3. 1994年1月:Python 1.0正式发布。
    4. 2000年10月16日:Python 2.0发布,增加了实现完整的垃圾回收,提供了对Unicode的支持。与此同时,Python的整个开发过程更加透明,社区对开发进度的影响逐渐扩大,生态圈开始慢慢形成。
    5. 2008年12月3日:Python 3.0发布,它并不完全兼容之前的Python代码,不过因为目前还有不少公司在项目和运维中使用Python 2.x版本,所以Python 3.x的很多新特性后来也被移植到Python 2.6/2.7版本中。

    目前我们使用的Python 3.7.x的版本是在2018年发布的,Python的版本号分为三段,形如A.B.C。其中A表示大版本号,一般当整体重写,或出现不向后兼容的改变时,增加A;B表示功能更新,出现新功能时增加B;C表示小的改动(如修复了某个Bug),只要有修改就增加C。如果对Python的历史感兴趣,可以查看一篇名为《Python简史》的博文。

        Python的优缺点

    Python的优点很多,简单的可以总结为以下几点。

    1. 简单和明确,做一件事只有一种方法。
    2. 学习曲线低,跟其他很多语言相比,Python更容易上手。
    3. 开放源代码,拥有强大的社区和生态圈。
    4. 解释型语言,天生具有平台可移植性。
    5. 支持两种主流的编程范式(面向对象编程和函数式编程)都提供了支持。
    6. 可扩展性和可嵌入性,可以调用C/C++代码,也可以在C/C++中调用Python。
    7. 代码规范程度高,可读性强,适合有代码洁癖和强迫症的人群。

    Python的缺点主要集中在以下几点。

    1. 执行效率稍低,因此计算密集型任务可以由C/C++编写。
    2. 代码无法加密,但是现在的公司很多都不是卖软件而是卖服务,这个问题会被淡化。
    3. 在开发时可以选择的框架太多(如Web框架就有100多个),有选择的地方就有错误。

        Python的应用领域

    目前Python在云基础设施、DevOps、网络爬虫开发、数据分析挖掘、机器学习等领域都有着广泛的应用,因此也产生了Web后端开发、数据接口开发、自动化运维、自动化测试、科学计算和可视化、数据分析、量化交易、机器人开发、图像识别和处理等一系列的职位。

    2.搭建编程环境

    Windows环境、Linux环境、Mac/OS 环境

    3.从终端运行Python程序

    确认Python的版本

    在终端或命令行提示符中键入下面的命令。

    python --version

    当然也可以先输入python进入交互式环境,再执行以下的代码检查Python的版本。

    import sys
    
    print(sys.version_info)
    print(sys.version)

    编写Python源代码

    可以用文本编辑工具(推荐使用Sublime、Atom、TextMate、VSCode等高级文本编辑工具)编写Python源代码并将其命名为hello.py保存起来,代码内容如下所示。

    print('hello, world!')

    运行程序

    切换到源代码所在的目录并执行下面的命令,看看屏幕上是否输出了"hello, world!"。

    python hello.py

    代码中的注释

    注释是编程语言的一个重要组成部分,用于在源代码中解释代码的作用从而增强程序的可读性和可维护性,当然也可以将源代码中不需要参与运行的代码段通过注释来去掉,这一点在调试程序的时候经常用到。注释在随源代码进入预处理器或编译时会被移除,不会在目标代码中保留也不会影响程序的执行结果。

    1. 单行注释 - 以#和空格开头的部分
    2. 多行注释 - 三个引号开头,三个引号结尾

    其他工具介绍

    IDLE - 自带的集成开发工具,IPython,Sublime,PYCharm

    练习:1.python之禅

      

    •优美胜于丑陋(Python 以编写优美的代码为目标)
    •明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似)
    •简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现)
    •复杂胜于凌乱(如果复杂不可避免,那代码间也不能有难懂的关系,要保持接口简洁)
    •扁平胜于嵌套(优美的代码应当是扁平的,不能有太多的嵌套)
    •间隔胜于紧凑(优美的代码有适当的间隔,不要奢望一行代码解决问题)
    •可读性很重要(优美的代码是可读的)
    •即便假借特例的实用性之名,也不可违背这些规则(这些规则至高无上)
    •不要包容所有错误,除非你确定需要这样做(精准地捕获异常,不写 except:pass 风格的代码)
    •当存在多种可能,不要尝试去猜测
    •而是尽量找一种,最好是唯一一种明显的解决方案(如果不确定,就用穷举法)
    •虽然这并不容易,因为你不是 Python 之父(这里的 Dutch 是指 Guido )
    •做也许好过不做,但不假思索就动手还不如不做(动手之前要细思量)
    •如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然(方案测评标准)
    •命名空间是一种绝妙的理念,我们应当多加利用(倡导与号召)

     2.运行结果:

     3.终端运行hello.py程序,需要在文件位置打开命令行,否则会报错“找不到文件”

    4.pycharm  无法编辑:默认安装了vim扩展,输入i切换编辑模式。

    5.编译注释行报错  ,添加如下注释“#coding=utf-8”

    6.运行结果:

       turtle函数还需要多加记忆

  • 相关阅读:
    布局重用 include merge ViewStub
    AS 常用插件 MD
    AS 2.0新功能 Instant Run
    AS .ignore插件 忽略文件
    AS Gradle构建工具与Android plugin插件【大全】
    如何开通www国际域名个人网站
    倒计时实现方案总结 Timer Handler
    AS 进行单元测试
    RxJava 设计理念 观察者模式 Observable lambdas MD
    retrofit okhttp RxJava bk Gson Lambda 综合示例【配置】
  • 原文地址:https://www.cnblogs.com/zhangzhang1994/p/10819838.html
Copyright © 2011-2022 走看看