列表与元组

来源:互联网 发布:淘宝卖家查看宝贝收藏 编辑:程序博客网 时间:2024/05/29 17:40

列表:

1.列表的定义:

  列表的定义格式 :
    list = []     ##定义了一个名为list的列表且列表内容为空 
  特点:
    (1)列表的元素可以是任意类型(数值型,列表,字符串等)
    (2)列表是可变类型的序列
    (3)列表的操作:“ 对象 = 属性 + 方法 ”
2.列表的用法:

(1)列表的索引
    
列表的索引下标也是从0开始的 他的索引规则和字符串的索引规则类似 list[0]读取的是列表的第一个元素;

(2)列表的添加与删除:

a.在 ipython 中 使用 ' list.append('')'来给列表添加元素                ##此命令只能按照顺序添加
b.在 ipython 中 使用 ' list.insert( , '') ' 来给列表插入元素            ##此命令可以选择你插入的位置
c.使用 list.remove(" ") 来删除相应的元素


[kiosk@foundation44 Desktop]$ ipython

In [1]: li = ['fentiao',6,'male']

In [2]: type(li)
Out[2]: list

In [3]: li[1]
Out[3]: 6

In [4]: li[1] = 7

In [5]: li
Out[5]: ['fentiao', 7, 'male']

In [6]: li[-1]
Out[6]: 'male'

In [7]: li[0]
Out[7]: 'fentiao'

In [8]: list[:]
---------------------------------------------------------------------------
TypeError                                Traceback (most recent call last)
<ipython-input-8-fa5a016ab0dd> in <module>()
----> 1 list[:]

TypeError: 'type' object has no attribute '__getitem__'

In [9]: li[:]
Out[9]: ['fentiao', 7, 'male']

In [10]: li[0:3:2]
Out[10]: ['fentiao', 'male']

In [11]: li.
li.append   li.extend   li.insert  li.remove   li.sort    
li.count    li.index    li.pop     li.reverse 

In [11]: li.
li.append   li.extend   li.insert  li.remove   li.sort    
li.count    li.index    li.pop     li.reverse 

In [11]: li.append('cat')

In [12]: li
Out[12]: ['fentiao', 7, 'male', 'cat']

In [13]: len(li)
Out[13]: 4

In [14]: "fensi" in li
Out[14]: False

In [15]: "fentiao" in li
Out[15]: True

In [16]: li2 = [2,4,6]+[1,3,5]

In [17]: print li2
[2, 4, 6, 1, 3, 5]

In [18]: "fensi" not in li
Out[18]: True

In [19]: li
Out[19]: ['fentiao', 7, 'male', 'cat']

In [20]: li = li*2

In [21]: print li
['fentiao', 7, 'male', 'cat', 'fentiao', 7, 'male', 'cat']

In [22]: li = ['wukong',300,'money',['bajie','pig']]

In [23]: li[0]
Out[23]: 'wukong'

In [24]: li[3]
Out[24]: ['bajie', 'pig']

In [25]: li[3][0]
Out[25]: 'bajie'

In [26]: li.append('tangseng')

In [27]: li
Out[27]: ['wukong', 300, 'money', ['bajie', 'pig'], 'tangseng']

In [28]: li.insert(0,'bailongma')

In [29]: li
Out[29]: ['bailongma', 'wukong', 300, 'money', ['bajie', 'pig'],'tangseng']

In [30]: li = ['tangseng','wukong']

In [31]: li.extend('zhu')

In [32]: li
Out[32]: ['tangseng', 'wukong', 'z', 'h', 'u']

In [34]: li.extend(['bajie'])

In [35]: li
Out[35]: ['tangseng', 'wukong', 'z', 'h', 'u', 'bajie']

In [36]: li.count('wukong')
Out[36]: 1

In [37]: li.extend(['bajie'])

In [38]: li
Out[38]: ['tangseng', 'wukong', 'z', 'h', 'u', 'bajie', 'bajie']

In [39]: li.count('bajie')
\Out[39]: 2

In [40]: li.index('bajie')
Out[40]: 5

In [41]: li.index('tangseng')
Out[41]: 0

In [42]: li.remove('bajie')

In [43]: li
Out[43]: ['tangseng', 'wukong', 'z', 'h', 'u', 'bajie']

In [44]: li.remove('bajie')

In [45]: li
Out[45]: ['tangseng', 'wukong', 'z', 'h', 'u']

In [46]: li.remove(li[1])

In [47]: li
Out[47]: ['tangseng', 'z', 'h', 'u']

In [48]: li.remove(li[1])

In [49]: li
Out[49]: ['tangseng', 'h', 'u']

In [50]: li.pop()
Out[50]: 'u'

In [51]: li.pop(0)
Out[51]: 'tangseng‘

二 元组

1.元组的定义:

定义空元组                  tuple = ()
定义单个值的元组             tuple = (sunner,)
一般的元组                  tuple = (sunner, 19, girl)

特点:
    (1)字符串中操作提取姓名/年龄/性别的方式不方便,诞生元组与列表这两个数据类型
    (2)不能对元组的值任意更改
    (3)对元组分别赋值,引申对多个变量也可通过元组方式分别赋值
    
2.元组的用法:

元组的索引: 与列表的索引类似 tuple =[0] 
元组的赋值: 可以使用元组对多个变量进行分别赋值
 

——>即不可变的列表,一旦生成,内容无法改变 
1.除了可改变列表内容的方法之外,其他的方法均可适用于元组 
2.因此,索引、切片、len()、print等均可用 
3.但是,append、extend、del等不可用 
4.为什么需要元组—保证列表内容不被修改

In [8]: my_tuple=1,'a',3.14,TrueIn [9]: my_tupleOut[9]: (1, 'a', 3.14, True)In [10]: my_tuple=(1,'a',3.14,True)In [11]: my_tupleOut[11]: (1, 'a', 3.14, True)In [12]: type(my_tuple)     #type()查看类型Out[12]: tuple
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

*用’@’进行分割 
In [14]: name,domain = ‘car@edu.cn’.split(‘@’)

In [15]: name 
Out[15]: ‘car’

In [16]: domain 
Out[16]: ‘edu.cn’



原创粉丝点击