python征程1.4(初识python)
1.列表解析。
(1)这是一个,让人听起来十分欣喜的术语,代表着你可以通过一个循环将所有值放到一个列表中。python列表解析属于python的迭代中的一种,相比python for循环速度会快很多。下面看下python列表解析是怎么工作的:
a = [x+2 for x in range(10)] print (a)
----------------------------
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
注:python会在解释器里对range(10)进行迭代,依次把列表里的内容取出来,赋值给最左边的x,然后执行x+2的操作,并且把执行好的结果保存在列表里。等range(10)迭代完以后就新生成了一个列表,结果就是[2, 3, 4, 5, 6, 7, 8, 9, 10, 11],从上面可以看出,这也是建立python 列表的一个方法。
(2)若是将上述列表用for循环来实现怎么实现那?
a = [] for i in range(10): a.append(i+2) print (a)
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
注:从上面可以看的出来,python列表解析比python for循环解析列表的代码量会更少,解析速度会更快,写起来也更酷,自己单独写脚本的话,会非常的简便。但是在可读性上来看还是多使用for循环更好一些。
2.文件和内建函数,open(),file()函数。
当我们熟悉了文件的操作了以后,会发现,文件的持久存储是很重要的。
(1)如何读写文件。
file=open("test.log","w")
注意:test.log是文件的名字和打开方式。”r“表示只读,”w“表示可写,”a“表示可添加,当然这只是其中的几种打开方式。
(2)下面的代码显示,提示用户输入文件名,然后打开一个文件,并将它的内容显示出来。
filename=input("please input your filename:") f=open(filename,"w") for eachline in f: print(eachline) f.close()
注意:我们又再一次的在print语句的后面使用逗号来抑制自动生成的换行符。因为在文件中已经给每行文本加入了一个换行符。
3.错误和异常。
要给你的代码添加错误异常处理,只要将它们”封装“在try-except语句中。try之后的代码就是你打算管理的代码。except之后的代码就是处理错误的代码。
try: f=open("filename","r") for eachline in f: print(eachline), f.close() except IOError e : print("file open error:",e)
4.函数。
类似于其他语言,python中的函数也用()来调用,函数在调用之前要先定义,如果函数中没有return语句,就会自动返回None对象。
5.如何定义函数。
def关键字及紧随其后的函数名,再加上该函数需要的几个函数名组成函数的参数是可选的,这个语句由一个冒号结束(:)与if,while语句的结束方式是一样的。
def add(x): "apply+operation to arguement" return (x+x)
6.如何调用函数。
与其他类型的语言一样,都是函数名再加上一对小括号(),括号之间是任意可选的参数,既是一个参数也没有小括号也不能省去。注意一下+操作符在非数值类型中是如何工作的。
>>>add(4.25) 8.5
7.默认函数。
函数的参数是一个默认值,在函数的定义中,参数以赋值的语句提供。事实上这仅仅是提供默认参数的语法,他表示函数调用时如果没有提供这个参数,他就取这个值作为默认值。
8.类。
雷是面向对象编程的核心,它是相关数据和逻辑的存储中心,它提供了创建真实对象的蓝图。由于python并不强求你面向对象的方式编程(与java不同),所以我们可以不学习类,可以了解一下。在这里就简单的介绍一下。
9.在python中比较实用用的一些函数。
(1)dir(obj):显示对象的属性。
(2)help(obj):以一种整齐美观的方式显示对象的文档字符串。
(3)int(obj):将一个对象转换为整型。
(4)len(obj):返回对象的长度。
(5)open(obj):打开文件的方式。
(6)range(obj):约束一个循环中的范围。
(7)input(obj):内建函数。
(8)str(obj):将一个对象转换为字符型。
(9)type(obj):返回对象的类型。