码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习笔记(一)

时间:2014-08-25 11:56:54      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:python   递归   索引   迭代   

List与Tuple

Python内置2种有序列表。List是可变数组,Tuple是不可变数组。

List范例:                                    

Girls =['LiuJingjing','ZhangHuixin','YeFei']

-用len()函数获得list元素个数。

-索引位置从0开始,最后一个元素的索引是-1

Girls[-1]
YeFei

-删除指定元素

Girls.pop(i)

-插入指定元素

Girls.insert(i,’BaiTing’)

-嵌套list

Friends=[‘ZhaoYadong’,Girls,’ChenMengxiang’]

那么Liujingjing这个元素对应的是Friends[1][0]

 

Tuple范例:

Girls = ('LiuJingjing','ZhangHuixin','YeFei')

-定义单元素Tuple,要加逗以消除歧义。

Girls= ('LiuJingjing',)

 

dict与set

可以就把dict想象成查字典的过程,dict使用(key-value)方式存储,以空间换时间。其内部存放顺序与key的放入顺序无关

dict范例:

Age={‘ChengYin’:23,’LiuJingjing’:24,’YiBowen’:22}
Age[‘ChengYin’]
23

-删除一个词条

Age.pop(‘YiBowen’)

虽然删除的是key,但是key对应的value值22也被一起删除了。

-key必须是不可变对象,而list是可变的,不可以作为key。

 

set

set是key的集合(没有重复元素,可交可并),而不存储value

set范例:

s1=set([1,2,3])
s2=set([2,3,5])
s1&s2
set([2,3])
s1|s2
set([1,2,3,5])

-可通过add(key)添加key

s1.add(3)

但是重复添加不会有效果,因为set是个集合。

-可通过remove(key)删除元素:

s1.remove(3)
set([1,2])

 

函数的默认参数

我们现在定义一个函数计算x的立方。

defpower(x,n=3):
       s=1
       while n>0:
              n=n-1
              s=s*x
       return s

这时,我们可以直接调用power(6),达到与power(6,3)同样的效果。

 

函数的可变参数

在参数前面加一个*号即可。例如定义一个求立方和函数。

def cube(*numbers):
       sum=0
       for n in numbers:
              sum=sum+n*n*n
       return sum

 

以后就可以直接调用了:

cube(1,5,6)

如果已经有了一个list或tuple,则

Nums=[1,5,6]
cube(*Nums)


 

递归函数

函数内部调用自己。以阶乘函数为例:

deffact(n):
       if n==1
              return 1
       return n*fact(n-1)


 

切片

去除有序列表的部分元素。如Girls的最后2个元素:

Girls[1:]


或者

Girls[-2:]


-取出第2个元素

Girls[1:2]


-取出最后1个元素

Girls[-2:-1]


 

下标循环迭代

fori,value in enumertate([‘A’,’B’,’C’]):
       print i,value

欢迎参与讨论并关注本博客微博以及知乎个人主页后续内容继续更新哦~

转载请您尊重作者的劳动,完整保留上述文字以及文章链接,谢谢您的支持!



Python学习笔记(一)

标签:python   递归   索引   迭代   

原文地址:http://blog.csdn.net/ycheng_sjtu/article/details/38817379

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!