zoukankan      html  css  js  c++  java
  • 认识python

    认识python

    人生苦短, 我用python------Life is short, you need Python

    人生苦短

    一、目标

    • Python 起源
    • 为什么要用Python?
    • Python的特点
    • python的优缺点

    二、 Python的起源

    Python 的创始人为吉多.范啰嗦索姆(Guido vanRossum)

    吉多

    1. 1989年的圣诞节期间,吉多范罗苏姆为了在阿姆斯特丹打法时间,决心开发一款 新的解释程序, 作为ABC语言的一种继承(感觉一下什么叫做牛人)。
    2. ABC是由吉多参加设计一种教学语言,就吉多本人看来,ABC这种语言非常优美而且强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并获取了非常好的效果。
    3. 之所以选中Python(蟒蛇)作为程序员的名字, 是因为他是BBC电视剧——蒙提.派森的飞行马戏团的爱好者。
    4. 1991年,第一个Python解释器诞生,他是用C语言实现,并能够调用C语言中的库文件。

    2.1 编译语言分类

    1. 机器语言:直接和计算机交互信息(使用0和1表示),优点:执行效率高,缺点:不容易读懂
    2. 汇编语言:将0和1表示使用英文表示 ,优点(相对机器语言):容易理解,缺点(相对机器语言):执行效率低
    3. 高级语言:翻译的方式不同(解释型和翻译型)优点:便于理解,缺点:执行效率低

    2.2 解释器

    计算机不能直接理解出任何机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言,计算机才能够执行程序。将其他语言翻译成机器语言的工具,被称为编译器

    编译器翻译由两种:一种是编译,另一种为解释。这两种方式之间区别在于翻译的时间点不同。当编译器以解释方式运行的时候,称为解释器

    编译与解释对比

    • 编译型语言(静态):程序在执行之前需要一个专门翻译的过程,将程序翻译成机器语言的文件,运行时不需要重新翻译,直接使用翻译的结果就行。程序执行效率高,依赖编译器,跨平台性差(统一编写程序文件,编写完成后,以前翻译成机器语言),如C,C++。
    • 解释型语言(动态):解释型语言编写的程序不进行预先编译,以文本方式存储程序代码,会将代码一句一句直接运行。在发布程序时,看起来省编译工作,但是在运行程序的时候,必须先解释再运行(既运行一行语句,解释一行语句)

    编译型语言和解释型语言对比

    • 速度——编译型语言速度比解释型语言执行速度快
    • 跨平台——解释型语言比编译型语言跨平台性好

    2.3 Python的设计目标

    1999 年,吉多·范罗苏姆向 DARPA 提交了一条名为 “Computer Programming for Everybody” 的资金申请,并在后来说明了他对 Python 的目标:

    • 一门简单直观的语言并与主要竞争者一样强大
    • 开源,以便任何人都可以为它做贡献
    • 代码像纯英语那样容易理解
    • 适用于短期开发的日常任务

    这些想法中的基本都已经成为现实,Python 已经成为一门流行的编程语言

    2.4 Python的设计哲学

    1. 优雅
    2. 简单
    3. 明确
    • Python 开发者的哲学是:用一种方法,最好是只有一种方法来做一件事
    • 如果面临多种选择,Python 开发者一般会拒绝花俏的语法,而选择**明确没有或者很少有歧义的语法

    三、为什么选择Python?

    • 代码量少
    • ……

    同一样问题,用不同的语言解决,代码量差距还是很多的,一般情况下 PythonJava1/5,所以说 人生苦短,我用 Python

    四、 Python 特点

    • Python 是完全面向对象的语言
      • 函数模块数字字符串都是对象,在 Python 中一切皆对象
      • 完全支持继承、重载、多重继承
      • 支持重载运算符,也支持泛型设计
    • Python 拥有一个强大的标准库,Python 语言的核心只包含 数字字符串列表字典文件 等常见类型和函数,而由 Python 标准库提供了 系统管理网络通信文本处理数据库接口图形系统XML 处理 等额外的功能
    • Python 社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖 科学计算人工智能机器学习Web 开发数据库接口图形系统 多个领域

    面向对象的思维方式

    • 面向对象 是一种 思维方式,也是一门 程序设计技术
    • 要解决一个问题前,首先考虑 由谁 来做,怎么做事情是 的职责,最后把事情做好就行!
      • 对象 就是
    • 要解决复杂的问题,就可以找多个不同的对象各司其职,共同实现,最终完成需求

    五、 Python 的优缺点

    5.1 优点

    • 简单、易学
    • 免费、开源
    • 面向对象
    • 丰富的库
    • 可扩展性
      • 如果需要一段关键代码运行得更快或者希望某些算法不公开,可以把这部分程序用 CC++ 编写,然后在 Python 程序中使用它们
    • ……

    5.2 缺点

    • 运行速度

    • 国内市场较小

    在当下的阶段,必将由程序员来主导,甚至比以往更甚。
  • 相关阅读:
    isMemberOfClass和isKindOfClass的区别
    performSelector和respondsToSelector用法
    iOS:堆(heap)和栈(stack)的理解
    iOS 事件处理机制与图像渲染过程
    IOS总结 静变量static、全局变量extern、局部变量、实例变量
    创建mvc
    程序启动原理
    常用几个UITableView,UICollectionView  UIScrollView关键点
    代码初始化 故事板初始化 xib初始化总结
    UINavigationController  和 UITabBarController
  • 原文地址:https://www.cnblogs.com/randysun/p/11223284.html
Copyright © 2011-2022 走看看