python ——入门基础

1.软件的相关概念

  软件的定义

  软件:是指一系列按照特定顺序组织的计算机数据与指令的集合

             指令:具体的操作流程

             数据:被操作的东西

2. 软件的分类

           软件一般分为以下两类:

           系统软件:Windows、Linux,Android、IOS等等

           应用软件:QQ、迅雷

    系统软件直接管理和控制计算机底层硬件,为用户提供最基本的计算机功能

    应用软件是处理特殊领域问题的软件,丰富了计算机的功能。
                     

3.软件开发

       所谓软件开发就是用编程语言去编写上述软件。

                  作文-书写-文字-中文,英文,日语,韩语

                   软件-编程-代码-C,Java,C++,Python

4.高级编程语言

       语言是同种事物之间沟通的桥梁:文字,语音,肢体

      人与计算机不是同种事物,怎么交流呢?最基本的就是,文字。人类学二进制?废了

      所以产生了高级编程语言,它让程序员无需考虑过多的底层细节(比如汇编,需要考虑很多底层细节),并且该语言易于

      程序员阅读,主要以字母、数字和符号组成。

      但是计算机看不懂啊,所以需要转换 


5.高级编程语言的分类

      按照编译执行类型分为两种:

            静态编译型:源代码需要完全被编译之后,再执行,且有严格的数据类型

                                  C,C++,Java,C#,Object-C(苹果手机)

            动态解释型:源代码不需要完全被编译,而是编译一行执行一行,这个过程叫解释,没有严       
                                 格的数据类型的区分。

                                 Python,JavaScript,Matlab,R,Ruby,PHP

        注意:语言没有哪个好坏,只有特定的应用场合。

  6.Python介绍

       Python的解释器如今有多个语言实现,我们常用的是CPython(官方版本的C语言 实现),其他还有Jython(可以运行在

       Java平台)、IronPython(可以运行在.NET和 Mono平台)、PyPy(Python实现的,支持JIT即时编译)

      Python目前有两个版本,Python2和Python3,最新版分别为2.7.12和3.5.2,现阶 段大部分公司用的是Python2

 7.Python的优缺点

     优点

 简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程 序就感觉像是在读英语一样,尽管这个英语的

            要求非常严格!Python的这种伪代码本质 是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身

 

 易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到 了,Python有极其简单的语法。

 

 免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你 可以自由地发布这个软件的拷贝、阅读它的

             源代码、对它做改动、把它的一部分用于新 的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python

             如此优秀的 原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。

 

高层语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理 你的程序使用的内存一类的底层细节。

     

可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改 动使它能够工作在不同平台上)。如果你小心地

             避免使用依赖于系统的特性,那么你的 所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、

             Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、 BeOS、OS/390、z/OS、Palm OS、

             QNX、VMS、Psion、Acom RISC OS、 VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC、

             Symbian 以Google基于linux开发的Android平台!

 

解释性————这一点需要一些解释。一个用编译性语言比如C或C++写的程序可 以从源文件(即C或C++语言)转换到一个你

         的计算机使用的语言(二进制代码,即0和 1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时

         候,连接转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编 译成二进制代码。你可以

         直接从源代码运行程序。在计算机内部,Python解释器把源代 码转换成称为字节码的中间形式,然后再把它翻译成计算机

         使用机器语言并运行。事 实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一

         切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机 上,它就可以工作了,这也使得你的

        Python程序更加易于移植。

 

面向对象————Python既支持面向过程的编程也支持面向对象的编程。在“面 向过程”的语言中,程序是由过程或仅仅是可重用

           代码的函数构建起来的。在“面向对 象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如

          C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。

 

可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公 开,你可以把你的部分程序用C或C++编写,

          然后在你的Python程序中使用它们。

 

丰富的库————Python标准库确实很庞大。它可以帮助你处理各种工作,包括 正则表达式、文档生成、单元测试、线程、数据

         库、网页浏览器、CGI、FTP、电子邮 件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk

         和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称 作Python的“功能齐全”理念。除

        了标准库以外,还有许多其他高质量的库,如 wxPython、Twisted和Python图像库等等。

规范的代码————Python采用强制缩进的方式使得代码具有极佳的可读性。

缺点

  运行速度,有速度要求的话,用C++改写关键部分吧。

 

  国内市场较小(国内以python来做主要开发的,目前只有一些web2.0公司)。但 时间推移,目前很多国内软件公司,尤其是游

  戏公司,也开始规模使用他。

 

  构架选择太多(没有像C#这样的官方.net构架,也没有像ruby由于历史较短,构架 开发的相对集中。Ruby on Rails 构架开发中

 小型web程序天下无敌)。不过这也从另 一个侧面说明,python比较优秀,吸引的人才多,项目也多。


8.Python应用场景

  Web应用开发

     Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python 编写的Web程序。Python定义了WSGI

    标准应用接口来协调Http服务器与基于Python的Web 程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope

     等,可以让程序员轻 松地开发和管理复杂的Web程序。

操作系统管理、服务器运维的自动化脚本

   在很多操作系统里,Python是标准的系统组件。 大多数Linux发行版以及NetBSD、 OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。有一些Linux发行 版的安装器使用Python语言编写,比如Ubuntu的Ubiquity安装器,Red Hat Linux和Fedora的 Anaconda安装器。Gentoo Linux使用Python来编写它的Portage包管理系统。Python标准 库包含了多个调用操作系统功能的库。通过pywin32这个第三方软件 包,Python能够访问 Windows的COM服务及其它Windows API。使用IronPython,Python程序能够直接调 用.Net Framework。一般说来,Python编写的系统管理脚本在可读性、性能、代码重用度、 扩展性几方面都优于普通的shell脚本。

科学计算

   NumPy,SciPy,Matplotlib可以让Python程序员编写科学计算程序。

桌面软件

   PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器

服务器软件(网络软件

   Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。 第三方库Twisted支持异步网络编程和

   多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。

游戏

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、 服务器。相较于Python,Lua的功能更

简单、体积更小;而Python则支持更多的特性和数据 类型。

构思实现,产品早期原型和迭代

YouTube、Google、Yahoo!、NASA都在内部大量地使用Python。
 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值