标签:
之前一直在学习MATLAB,最近想想好好学学Python,Python和MATLAB一样,是动态语言,定义变量不用像C,java一样定义类型,更为灵活,因此就很有亲切感,之前看的一些资料记录的一些东西~
########
Python的变量名必须是大小写英文和数字的组合,不能以数字开头。
转义字符,可以用\,除此之外,还有一种方式就是直接在一行或多行字符串之前加上r’’’…’’’。
Unicode字符串,表示的字符串用u’…’表示。如果中文字符在Python环境中遇到 UnicodeDecodeError,是因为.py文件保存的问题,可在第一行加上# -*- coding: utf-8 -*-
因为Python把0
、空字符串
‘‘
和None
看成 False,其他数值和非空字符串都看成 True,所以:
True and ‘a=T‘ 计算结果是 ‘a=T‘
继续计算 ‘a=T‘ or ‘a=F‘ 计算结果还是 ‘a=T‘
短路计算。
1. 在计算 a and b
时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
2. 在计算 a or b
时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
创建list,list是一种有序的集合,可以随时的添加和删除其中的元素。
很重要的一点就是字符串的一定要加引号。
按照索引可以访问list,但是注意不可以越界,在我个人看来,list和数组真的超级像,特别好用的一点是排序的时候倒序排列可以直接用符号,要注意的一点是不能越界。
添加新元素用append()方法,把新元素追加到list的末尾。
insert()可以将一个新元素添加到特定的位置。
其中每一行输入完成之后可以不加分号。
List中删除元素可以采用pop()方法,执行L.pop()删除list的最后一个元素,如果是特定位置的话可以采用pop(2),2表示的是位置。
替换很简单,直接索引就可以。
Tuple是另外一种有序的列表,创建之后就不能再修改,与list的创建方式不同,tuple采用的是()替代[].
如果在tuple的元素中加一个list,则就可以对其进行修改了。
Python中的if语句输入之后,需要在后面输一个:,才能输出。
if…elif...else语句
for循环:
L = [‘Adam‘, ‘Lisa‘, ‘Bart‘]
for name in L:
print name
while循环
N = 10
x = 0
while x < N:
print x
x = x + 1
break循环
continue
多重循环
for x in [‘A‘, ‘B‘, ‘C‘]:
for y in [‘1‘, ‘2‘, ‘3‘]:
print x + y
dict
我们把名字称为key,对应的成绩称为value,dict就是通过 key 来查找 value。
就是在对应关系中应用比较好。
Len()函数可以计算出任意集合的大小,dict是一个集合,所以可以用来计算集合。
可以通过d[key]的方式访问dict
>>> print d.get(‘Bart‘)
59
>>> print d.get(‘Paul‘)
None
注意在之前的索引当中,key需要在[]中。
Dict的第一个特点是查找速度快,而且查找的速度与元素的个数无关,而list的查找速度是随着元素的增加而逐渐下降的;第二个特点是存储的key-value序对是没有顺序的;第三个特点是作为key得到元素是不可变的,所以list不能作为key。
Dict的缺点是占用内存大,还会浪费很多内容。
同时,还可以对dict进行更新,可以直接插入,也可以进行替换。
遍历dict,通过for循环实现:
for key in d:
print key + ‘:’,d[key]
set
dict是建立了一系列的映射关系,而set是建立一系列无序的,不重复的元素。
创建set的方式是调用set()并传入一个list,list的元素将作为set的元素。
Set是一个无序集合,不能使用索引来访问,可以直接用判断语句来进行判断。
对啊,由于set和dict的元素不可变性,所以可以用if语句判断用户的输入是否有效。
遍历set的方法和其它的一样,直接用for 。。。in。。。就ok
更新set,对于set,更新就是把新的元素添加到set中,采用add(),二是把已有的元素从set中删除,采用remove().
除此之外,Python内置了很多函数,可以直接调用,比如计算圆面积。
要调用一个函数,需要知道函数的名称和参数,可以直接从Python的官方网站查看文档:
http://docs.python.org/2/library/functions.html#abs
也可以在交互命令行中直接通过help()进行查找帮助信息。
当然,同其它语言一样,Python还可以自己编写函数,这里要使用到def语句,依次写出函数名、括号、括号中的参数和冒号。在函数语句的最后,一定是需要return的。
函数可以返回多值,但其的本质是返回一个tuple。
递归函数
一个函数在内部调用自己本身。
在使用递归函数的时候需要注意防止栈溢出。递归调用的次数过多,会导致栈溢出。
看完之后真真是觉得很乱啊,虽然对于文本一直强迫自己改的规范一点,但是真的太晚了,明天再改改,继续学啦~
未完待续...
00:45:14
标签:
原文地址:http://www.cnblogs.com/ybjourney/p/4596663.html