专栏首页aCloudDeveloperpython学习总结

python学习总结

最近经学长介绍学习python,为研究生做研究做准备,python对于科学计算有着很高的效率,对于科研人员当然是有着很强的诱惑,虽然我还没真正用它,但从整个学习的过程来看,的确是高效,学起来也很轻松。

初学只是简单地看了一下python的一些基本语法,一天看一点,一周结束,准备对一周的所学进行一点记录和总结。先来看一些大师对学python的感觉:

python的官方介绍是:python是一种简单易学,功能强大的编程语言,它有着高效率的高层数据结构,简单而有效地实现面向对象的编程。读一下像ESR这样的超级电脑高手谈Python的话,你会感到十分有意思:

● Eric S. Raymond是《The Cathedral and the Bazaar》的作者、“开放源码”一词的提出人。他说Python已经成为了他最喜爱的编程语言。这篇文章也是促使我第一次接触Python的 真正原动力。 ● Bruce Eckel著名的《Thinking in Java》和《Thinking in C++》的作者。他说没有一种语言比得上Python使他的工作效率如此之高。同时他说Python可能是唯一一种旨在帮助程序员把事情弄得更加简单的语言。请阅读完整的采访以获得更详细的内容。 ● Peter Norvig是著名的Lisp语言书籍的作者和Google公司的搜索质量主任(感谢Guido vanRossum告诉我这一点)。他说Python始终是Google的主要部分。事实上你看一下Google招聘的网页就可以验证这一点。在那个网页上,Python知识是对软件工程师的一个必需要求。 ● Bruce Perens是OpenSource.org和UserLinux项目的一位共同创始人。UserLinux旨在创造一个可以被多家发行商支持标准的Linux发行版。Python击败了其它竞争对手如Perl和Ruby成为UserLinux支持的主要编程语言。

下载python,请到http://www.python.org/download/

虽然下面这些知识点很细节,但细节决定成败,这句老掉牙的话我还是很同意,记录下也是对自己这一周的学习做一点总结,同时也可以加深印象,免得做研究的时候用到又要重头学起。

1、如何退出Python提示符 如果你使用的是Linux/BSD shell,那么按Ctrl-d退出提示符。如果是在Windows命令行中,则按Ctrl-z再按Enter,而Ctrl-d则是输入空字符,表示触发EOF错误。

2、使用三引号('''或""") 利用三引号,你可以指示一个多行的字符串。你可以在三引号中自由的使用单引号和双 引号。

3、逻辑行与物理行

物理行是你在编写程序时所 看见 的。逻辑行是Python 看见的单个语句。Python假定每个物理行对应一个 逻辑行 。

4、在Python中没有switch语句。你可以使用if..elif..else语句来完成同样的工作(在某些场合,使用字典会更加快捷。)

5、语句for i in range(1,5),,range返回一个序列的数。这个序列从第一个数开始到第二个数为止。例如,range(1,5)给出序列[1, 2, 3, 4]。默认地,range的步长为1。如果我们为range提供第三个数,那么它将成为步长。例如,range(1,5,2)给出[1,3]。

6、函数通过关键字def定义,局部变量从它们的名称被定义的那点开始。只有在形参表末尾的那些参数可以有默认的参数值,即默认参数。

7、没有返回值的return语句等价于return None。None是Python中表示没有任何东西的特殊类型。例如,如果一个变量的值为None,可以表示它没有值。pass语句在Python中表示一个空的语句块。

8、sys.argv变量是一个字符串的列表,sys.argv包含了命令行参数 的列表,即使用命令行传递给你的程序的参数。sys.path包含输入模块的目录名列表。

9、含有0个或1个项目的元组。一个空的元组由一对空的圆括号组成,如myempty = ()。然而,含有单个元素的元组就不那么简单了。你必须在第一个(唯一一个)项目后跟一个逗号,这样Python才能区分元组和表达式中一个带圆括号的对象。即如果你想要的是一个包含项目2的元组的时候,你应该指明singleton = (2 , )。

10、列表、元组和字符串都是序列,序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。

E.g:slist = ['a','b','c','d']

索引操作符自然不用多说,但python运行有负值索引,如slist[-1] = 'd',表示从尾数的第一个数。

slist[1:3] = ['b','c']

切片操作符的第一个数(冒号之前)表示切片的开始位置,第二个数表示切片到那里结束,如果不指定第一个数,则从序列首开始,如果不指定最后一个数则到序列尾停止。

slist[2:] = ['c','d']   slist[:2] = ['a','b']  slist[1:-1] = ['b','c'] 

11、os.sep变量的用法——这会根据你的操作系统给出目录分隔符,即在Linux、Unix下它是'/',在Windows下它是'\\',而在Mac OS下它是':'。使用os.sep而非直接使用字符,会使我们的程序具有移植性,可以在上述这些系统下工作。

12、类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Python会提供这个值,这个值就是self,如:假如你有一个类称为MyClass和这个类的一个实例MyObject。当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,这会由Python自动转为MyClass.method(MyObject, arg1,arg2)——这就是self的原理了。

13、__init__方法在类的一个对象被建立时,马上运行。这个方法可以用来对你的对象做一些你希望的初始化,类似于C++的Constructor;对应的有__del__对应于Destructor。

14、Python中所有的类成员(包括数据成员)都是公共的,所有的方法都是有效的 。只有一个例外:如果你使用的数据成员名称以 双下划线前缀 比如__privatevar,Python的名称管理体系会有效地把它作为私有变量。

15、Python提供了一个标准的模块,pickle,使用之可以在一个文件中储存任何Python对象,之后你又可以把它完整无缺地取出来。这被称为 持久地 储存对象。cPickle功能和pickle完全相同,用C语言编写,比pickle快1000倍,储存使用dump函数,如:p.dump(slist,file);取储存使用load函数,如:p.load(file)

16、使用raise语句可以引发异常。

17、通过列表综合,可以从一个已有的列表导出一个新的列表。如:

listone = [2, 3, 4] listtwo = [2*i for i in listone if i > 2] print listtwo

结果为:[6, 8]

暂时学了这么多,以上是一些极易忘记的点,以后再通过学习《深入理解python》进行深入学习。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 顺序容器vector、list、deque的区别

    顺序容器 三种容器均支持resieze()操作,重新划定容器大小,且此函数有重载。 vector vector和built-in数组类似,是一个在堆上建...

    CloudDeveloper
  • 云计算时代,数据中心架构三层到大二层的演变

    为了满足自身的业务需求,保证数据的稳定和可靠。无论是互联网还是传统行业,都会有自己或大或小的数据中心,甚至如阿里云和亚马逊这种专门以出租计算资源的云计算公司,更...

    CloudDeveloper
  • 经典排序之 插入排序

    Author: bakari  Date: 2012.7.21 排序算法有很多种,每一种在不同的情况下都占有一席之地。关于排序算法我分“经典排序之”系列分别述之...

    CloudDeveloper
  • 10 个不可不知的 Python 图像处理工具 !

    今天的世界充满了数据,图像是这些数据的重要组成部分。但是,在使用它们之前,必须对这些数字图像进行处理 - 分析和操作,以提高其质量或提取一些可以使用的信息。

    小小詹同学
  • Python初探---2x版本与3x版本

    Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。

    py3study
  • 一篇让你直接入门的 Python 教程

    Python,以英国喜剧团体MontyPython的名字命名,是一种解释性、交互性、面向对象的编程语言.它的灵活性使它能够做许多事情,无论大小。Python可以...

    Python知识大全
  • R vs. Python,数据分析中谁与争锋?

    R和Python两者谁更适合数据分析领域?在某些特定情况下谁会更有优势?还是一个天生在各方面都比另一个更好? 当我们想要选择一种编程语言进行数据分析时,相信大多...

    CSDN技术头条
  • Python 基础语法

    Python语言与Perl,C和Java等语言有许多相似之处。但是,也存在一些差异。 在本章中我们将来学习Python的基础语法,让你快速学会Python编程...

    小小科
  • 数百种编程语言,而我为什么建议你要学Python?

    重磅:1月16日上午,教育部正式将人工智能、物联网、大数据处理正式划入高中新课标,这就意味着现在的学生16岁就要开始学习编程了!

    Python之道
  • 【Python环境】人们对Python在企业级开发中的10大误解

    在PayPal的编程文化中存在着大量的语言多元化。除了长期流行的C++和Java,越来越多的团队选择JavaScript和Scala,Braintree的收购也...

    陆勤_数据人网

扫码关注云+社区

领取腾讯云代金券