Python数据类型(三):列表元组

来源:互联网 发布:hbase java 条件查询 编辑:程序博客网 时间:2024/05/12 22:43

除了数值,字符串,布尔这三个简单的数据类型外,Python还有四个内置的复杂的类型.列表 元组 字典 集合。

列表List、元组Tuple的功能基本差不多,只不过tuple是只读的,列表用[],元组用()

可以认为tuple能实现的功能list都可以做到,简单的理解就是出于安全考虑多出个类型tuple

像svn的权限控制我们看到有只读、只写权限,数据库中的表也是分只读、只写权限。

1、list的遍历


1.1、range、xrange

lst = [2016, 'arwen', 'Python','C++', 'C#', 'JS', 'Shell']lst_len = len(lst)for i in range(0, lst_len):    print lst[i]for i in xrange(0, lst_len):    print lst[i]

使用range和xrange看起来好像一样的,从功能角度来讲也确实一样。但是xrange性能更好点,因为range是一开始就生成一个列表用掉很多内存,而xrange只是个生成器,用的时候才申请一点。

>>> one = range(0, 10)>>> one = range(0, 5)>>> two = xrange(0, 5)>>> print one[0, 1, 2, 3, 4]>>> print twoxrange(5)>>> print two[1]1

1.2、for in

lst = [2016, 'arwen', 'Python','C++', 'C#', 'JS', 'Shell']for item in lst:    print item


2、list的赋值、添加

假如只是生成数列,可以用range给list赋值。

假如生成同样的数值可以用[val]*len、或[val in range(0,len)]。

把一个列表的值拷贝到另外一个列表lst1 = lst2[:]

</pre><pre name="code" class="python">even_lst = range(0, 100, 2) #100以内的偶数odd_lst = range(1, 100, 2)  #100以内的奇数three_lst = range(3, 100, 3) #100以内3的倍数lst = [0]*10 #生成10个元素,全部是0






0 0