python3 第一章 - 简介
1、什么是python
引用官方的话:Python是一种易于学习,强大的编程语言。它具有高效的高级数据结构,并通过简单而有效的方法来进行面向对象编程。Python的优雅语法和动态类型,以及其解释性质,使其成为在大多数平台上的许多领域的脚本和快速应用程序开发的理想语言。
这段话怎么理解呢?我们知道,任何编程语言的目的都是编写程序,而我们又是通过程序让计算机干活的。比如,播放一个mp3,玩一局吃鸡游戏,等等。计算的的大脑(CPU),通常是不能直接识别我们编写的程序,它只认机器指令。本质上,任何编程语言最终都会“翻译”成CPU可以执行的机器指令。跟据“翻译”的方式不同,编程语言可以分为两大类:编译型、解释型。Python是一种解释型的语言。(1)
不同的编程语言,干同一个活,编写的代码量,差距是很大的。形象的理解就是,做同一件事,你可能用C语言得写1000行代码,而用C#只要写100行,用Python则可能只要10行。所以Python是一种高级的语言。 (2)
需要注意的是,代码少的代价是运行速度慢,C程序运行1秒钟,C#程序可能需要5秒,而Python程序可能就需要20秒。Python程序通过Python解释器执行,执行效率比较低。
2、Python能做什么
各行各业到处都是Python的身影,可以做网站(比如 YouTube、豆瓣),可以做图片处理,可以做科学计算,也可以爬虫,甚至于游戏,学好Python后不用担心没有用武之地,Google就大量的在使用。
当然Python也有它不善长做的,比如操作系统,比如火箭控制系统等。我所说的不善长并非说不能,要记住很个语言都有自己善长的和不善长的,在合适的情况下选择合适的语言这才是程序员需要关心的。
3、Python的版本
Python有两个大版本:一个是2.x,一个是3.x。这两个版本是互相不兼容的,关于两者之间的区别我后面会提到。事实上2012的时候官方就说Python2将于2015年不再支持,2014年改成了2020年。也许2.x说终结还过早,但现在注流的第三方库大多都兼容了3.x,本系列的教程是基于3.6。
MIT的计算机第一门课一直在灌输两个道理:计算机程序是写给人看的,恰好能够运行;软件设计其实就是对于抽象复杂度的控制。这很有道理,哈哈,人生苦短,我用Python。
注(1):解释型的缺点是代码不能加密
注(2):高级编程语言通常都会提供一个比较完善的基础代码库,让你能直接调用。除了内置的库外,Python还有大量的第三方库。
python3 第一章 - 简介的更多相关文章
- 读书笔记 - javascript 高级程序设计 - 第一章 简介
第一章 简介 诞生时间 1995 最初用途 客服端验证 第一版标准 注意是标准 1997年 Ecma-262 一个完整的js实现由三部分组成 ECMAScript DOM 文档对象模型 BO ...
- Javascript模式(第一章简介)------读书笔记
一:模式 模式是一个通用问题的解决方案,可以提供一个更好的实践经验.有用的抽象化表示和解决一类问题的模板. 本书主要讨论如下三种类型的模式 1 设计模式:可复用面向对象软件的基础,包括singleto ...
- KnockoutJS 3.X API 第一章 简介
本文纯正翻译自官网API文档.其中包含一下个人理解. 官网API地址:http://knockoutjs.com/documentation/introduction.html 简介 Knockout ...
- UNP学习笔记(第一章 简介)
环境搭建 1.下载解压unpv13e.tar.gz 2.进入目录执行 ./configurecd lib //进入lib目录make //执行make命令 3.将生成的libunp.a静态库复制到/u ...
- UNIX网络编程卷1 第一章 简介 读书笔记。
基本没讲什么,一点点计算机网络发展史,一点点socket()简单介绍,最重要的是1.3节协议无关性. 协议无关性: 贯穿整本书的一个重要特性,他主要强调的是 socket是网络协议无关的编程接口. s ...
- 《JAVA NIO》第一章 简介
1.2 CPU已不再是束缚 相反,是JVM 自身在I/O 方面效率欠佳.操作系统与Java 基于流的I/O模型有些不匹配. 操作系统要移动的是大块数据(缓冲区),这往往是在硬件直接存储器存取(DMA) ...
- Spring in Action --- 第一章 简介
简化java开发 基于POJO的轻量级和最小入侵性编程 通过依赖注入和面向接口实现松耦合 基于切面和管理进行声明式编程 通过切面和模板减少样板式代码 bean的生命周期 Spring对bean进行实例 ...
- 17.UNP第一章 简介
获取时间的客户端代码: //客户端程序 #include "unp.h" int main(int argc, char **argv) { int sockfd, n; ]; s ...
- 《深入Linux内核架构》笔记 --- 第一章 简介和概述
Linux将虚拟地址空间划分为两个部分,分别称为内核空间和用户空间 各个系统进程的用户空间是完全彼此分离的,而虚拟地址空间顶部的内核空间总是同样的,无论当前执行的是哪个进程. 尽管Intel处理器区分 ...
随机推荐
- thinkphp->add方法错误
$group_id=$model->add($add); 以上这句代码如果执行成功,返回它存储的id,但是,会有一种情况一直返回1. 代码完全没有问题,检查数据库发现有两个主键id,删除一个就O ...
- 线上服务器上安装的VNCServer不能正常工作
1.问题描述: 线上服务器上安装的不能正常工作 2.解决问题过程: 一. 重启vncserver 运行命令:vncserver -kill :1和vncserver :1 二. 发现vncserver ...
- 转深入理解 AngularJS 的 Scope作用域
文章转载英文:what-are-the-nuances-of-scope-prototypal-prototypical-inheritance-in-angularjs 中文:http://www. ...
- jqueryui sortable拖拽后保存位置
jqueryUI sortable 可以用来进行页面拖拽布局,然而有一个小问题就是拖拽后如何保存状态. 工作中遇到了这个情况,遍把这个问题记了下来,具体思路是: 利用拖拽stop后利用 var a ...
- 咫尺论坛|即速应用-微信小程序社区
咫尺论坛|即速应用-微信小程序社区 是一个集微信和支付宝小程序行业资讯.开发资源.技术交流于一身的大型小程序开发论坛,成立伊始便迅速聚集了一大批小程序开发爱好者,短时间内成为了国内领先的小程序开发者社 ...
- React-Native 学习笔记-Android开发平台-开发环境搭建
详细步骤请查看官网对应文档,BUT,有些注意事项请注意! 1,优先安装Node.js,因为后面可以使用npm安装软件, 2,注意不要使用CNPM!!!!!!!!! 3,Android Studio 请 ...
- WebGL光照阴影映射
原文地址:WebGL光照阴影映射 经过前面的学习,webgl的基本功能都已经掌握了,我们不仅掌握了着色器的编写,图形的绘制,矩阵的变换,添加光照,还通过对webgl的基础api封装,编写出了便 ...
- DOM拓展表格小练习
涉及的知识点 DOM操作HTML页面.DOM操控表格.一些基本的事件.遍历知识.数组字符串知识.函数的作用域知识 效果图 html代码 <body><div id="con ...
- border-image详解
一.border-image的兼容性 border-image可以说是CSS3中的一员大将,将来一定会大放光彩,其应用潜力真的是非常的惊人.可惜目前支持的浏览器有限,仅Firefox3.5,chrom ...
- CTF---密码学入门第四题 困在栅栏里的凯撒
困在栅栏里的凯撒分值:10 来源: 北邮天枢战队 难度:易 参与人数:4531人 Get Flag:2124人 答题人数:2285人 解题通过率:93% 小白发现了一段很6的字符:NlEyQd{sef ...