每日一课 | 详解Python的两大特性

原创 zglg 、Alicia Python大本营 昨天

01

大家好,我是营长,Python大本营新一期的专栏又开始了,上期营长分享了机器学习,详情可戳“被疯转的机器学习资料,究竟有什么特别之处?

最近也有很多小伙伴给营长留言,继续分享一些关于Python的知识点,所以,咱们还是回到老话题:Python

本期营长邀请的是zglg (某大厂算法工程师)和Alicia (美国顶尖学府 AI 博士后)两位为我们分享Python全栈精通之路。

作者有话说

很多人问为什么要写这个专栏?
因为我也有过那段“自学” Python 的迷茫时期,所以深知一个好的系统学习规划和老师讲解,是能够达到事半功倍省下我们程序员更多青春的关键。

别的老师在介绍知识点时都会说“这东西是什么”,但我不想这样做。

我觉得“为什么这东西是这样”或者“在什么场景适应什么需求有什么好处才会用这东西”,反而更能让你们对知识本身会有更深刻的理解。

第一期

Python的两大特性

Python 语言使用率越来越高,使用 Python 不仅可以做 GUI 开发,Web 开发,还能进行数据处理,数据探索性分析(EDA),更是进行数据挖掘,机器学习和深度学习等的首选语言。

基于 Python 的包更是枝繁叶茂,遍地开花,tiobe 编程语言排行榜最新统计显示 Python 是增长最快的语言。

这得益于 Python 语言语法简单,开发效率高,集成系统非常方便。

Python 相关的就业机会也是非常多,并且待遇优厚。

因此,不管从易用性,还是工作机会和待遇来说,Python 都是 IT 从业者需要掌握的语言,接下来我们开始 Python 之旅。

Python 语言两大特性

Python 是一门动态的、强类型语言,那什么是动态语言?

要了解什么是动态语言,要首先了解类型检查。

类型检查是验证类型约束的过程,编译器或解释器通常在编译阶段或运行阶段做类型检查。

类型检查就是查看变量和它们的类型,然后判断表达式是否合理。例如,不能拿一个string 类型变量除以浮点数变量。

类型检查发生在程序运行阶段(run time)的是动态类型语言(dynamically typed languages). 常见的动态语言包括:Python, Javascrpit, PHP

类型检查发生在编译阶段(compile time)的是静态类型语言(statically typed languages). 常见的静态类型语言包括:C, C++, Java, C#, Scala。

什么是强类型语言?

强类型语言是指:不管是在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量便会持有此类型,并且不能同其他类型在计算表达式时混合使用。

例如,在交互式工具IPython中输入如下两行代码:

    In [1]: a = 5In [2]: a = a + 's'

    程序会抛出TypeError异常:unsupported operand type(s) for +: 'int' and 'str', 不支持 int变量和 str变量相加。

    常见的强类型语言有:Python, Java, C#, Scala.

    与之对应的是弱类型语言,弱类型语言容易与其他类型混合计算。

    弱类型语言代表 Javascript支持如下操作:

      var data = 5data = data + 'xiaoming' //string和int结合自动转化为string

      常见的弱类型语言有:C, C++, PHP, Javascript.按照是否为静态/动态语言,弱类型/强类型两个维度总结常用的语言分类。

      今日内容有get吗,欢迎各位留言讨论!

      (0)

      相关推荐

      • Python和Java有什么区别吗?哪个就业更好?

        Python是一个有着简单句法的多样性的语言.因为很多新手程序员会喜欢编写很少的代码,这使得Python被广泛应用于多个领域来写脚本,快速开发应用等等. Java是一个典型化的编程语言,这意味着变量名 ...

      • 每日一课 | 详解抽象之函数

        昨天 Python大本营每日一课 大家好,我是营长,上期营长分享了数据科学"的知识点:,不清楚的小伙伴可戳这

      • 详解Python就业前景怎么样

        无可否认,互联网产业的迅速发展带来了大量的工作机会,在这些年中,技术类公司占据了主导地位,而在云计算.大数据.人工智能等领域,以人工智能为代表的互联网巨头纷纷涉足这个领域,比如研究智能机器人,或者无人 ...

      • 青课 | 王文:详解百年未有之大变局

        青课 | 王文:详解百年未有之大变局

      • 羽毛球实用秘籍,详解发力两要点

        想要打好羽毛球,其实有一个很简单的原理:用尽可能小的损失将自己的身体力量通过球拍传递出去.为了做到这一点,有两个击球发力常提到的诀窍:内旋和外旋 .一.内旋挥拍内旋挥拍指持拍手前臂向身体内侧转动带动球 ...

      • 天王星换座之前充满巨变的一周,12星座每日运势详解

        5月 第2周 眼花缭乱的星象,精彩的一周来了! 赶紧盘点每日星象,看看如何把握好运 LEARN MORE 水星刑冥王星 5.7 捣乱指数:★★★★ 周一星象并不好,水星冥王刑克会让我们在思想上.情绪上 ...

      • 文王六十四卦金钱课详解

        六十四卦排列顺序与读音 按周易古经顺序排列 1.乾卦:读 qián 2.坤卦:读 kūn 3.水雷屯卦:读 zhūn 4.山水蒙卦:读 méng 5.水天需卦:读 xū 6.天水讼卦:读 sòng 7 ...

      • (数据科学学习手札26)随机森林分类器原理详解&Python与R实现

        转自 博客园 一.简介 作为集成学习中非常著名的方法,随机森林被誉为"代表集成学习技术水平的方法",由于其简单.容易实现.计算开销小,使得它在现实任务中得到广泛使用,因为其来源于决 ...

      • 详解Python 函数如何重载?

        什么是函数重载?简单的理解,支持多个同名函数的定义,只是参数的个数或者类型不同,在调用的时候,解释器会根据参数的个数或者类型,调用相应的函数. 重载这个特性在很多语言中都有实现,比如 C++.Java ...

      • 详解Python的5个就业方向和薪资

        今天跟大家聊聊Python的几个主要发展和就业方向,给准备学习Python的小伙伴解惑. 发展前景一:Linux运维 Linux运维是必须而且一定要掌握Python语言,Python是一门非常NB的编 ...