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

Python基础之:List

时间:2015-03-11 21:27:05      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:

Python:List (列表)

list 为Python内建类型,位于__builtin__模块中,元素类型可不同,元素可重复,以下通过实际操作来说明list的诸多功能,主要分为增、删、改、查

list帮助:在IDE中输入 help(list)可查看

技术分享
Help on class list in module __builtin__:

class list(object)
 |  list() -> new empty list
 |  list(iterable) -> new list initialized from iterable‘s items
 |  
 |  Methods defined here:
 |  
 |  __add__(...)
 |      x.__add__(y) <==> x+y
 |  
 |  __contains__(...)
 |      x.__contains__(y) <==> y in x
 |  
 |  __delitem__(...)
 |      x.__delitem__(y) <==> del x[y]
 |  
 |  __delslice__(...)
 |      x.__delslice__(i, j) <==> del x[i:j]
 |      
 |      Use of negative indices is not supported.
 |  
 |  __eq__(...)
 |      x.__eq__(y) <==> x==y
 |  
 |  __ge__(...)
 |      x.__ge__(y) <==> x>=y
 |  
 |  __getattribute__(...)
 |      x.__getattribute__(‘name‘) <==> x.name
 |  
 |  __getitem__(...)
 |      x.__getitem__(y) <==> x[y]
 |  
 |  __getslice__(...)
 |      x.__getslice__(i, j) <==> x[i:j]
 |      
 |      Use of negative indices is not supported.
 |  
 |  __gt__(...)
 |      x.__gt__(y) <==> x>y
 |  
 |  __iadd__(...)
 |      x.__iadd__(y) <==> x+=y
 |  
 |  __imul__(...)
 |      x.__imul__(y) <==> x*=y
 |  
 |  __init__(...)
 |      x.__init__(...) initializes x; see help(type(x)) for signature
 |  
 |  __iter__(...)
 |      x.__iter__() <==> iter(x)
 |  
 |  __le__(...)
 |      x.__le__(y) <==> x<=y
 |  
 |  __len__(...)
 |      x.__len__() <==> len(x)
 |  
 |  __lt__(...)
 |      x.__lt__(y) <==> x x*n
 |  
 |  __ne__(...)
 |      x.__ne__(y) <==> x!=y
 |  
 |  __repr__(...)
 |      x.__repr__() <==> repr(x)
 |  
 |  __reversed__(...)
 |      L.__reversed__() -- return a reverse iterator over the list
 |  
 |  __rmul__(...)
 |      x.__rmul__(n) <==> n*x
 |  
 |  __setitem__(...)
 |      x.__setitem__(i, y) <==> x[i]=y
 |  
 |  __setslice__(...)
 |      x.__setslice__(i, j, y) <==> x[i:j]=y
 |      
 |      Use  of negative indices is not supported.
 |  
 |  __sizeof__(...)
 |      L.__sizeof__() -- size of L in memory, in bytes
 |  
 |  append(...)
 |      L.append(object) -- append object to end
 |  
 |  count(...)
 |      L.count(value) -> integer -- return number of occurrences of value
 |  
 |  extend(...)
 |      L.extend(iterable) -- extend list by appending elements from the iterable
 |  
 |  index(...)
 |      L.index(value, [start, [stop]]) -> integer -- return first index of value.
 |      Raises ValueError if the value is not present.
 |  
 |  insert(...)
 |      L.insert(index, object) -- insert object before index
 |  
 |  pop(...)
 |      L.pop([index]) -> item -- remove and return item at index (default last).
 |      Raises IndexError if list is empty or index is out of range.
 |  
 |  remove(...)
 |      L.remove(value) -- remove first occurrence of value.
 |      Raises ValueError if the value is not present.
 |  
 |  reverse(...)
 |      L.reverse() -- reverse *IN PLACE*
 |  
 |  sort(...)
 |      L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
 |      cmp(x, y) -> -1, 0, 1
 |  
 |  ----------------------------------------------------------------------
 |  Data and other attributes defined here:
 |  
 |  __hash__ = None
 |  
 |  __new__ = 
 |      T.__new__(S, ...) -> a new object with type S, a subtype of T
list帮助

 

1)增

a.初始化

   直接用 list1 = list()或者 list1 =[ ]构造一个空列表

   list2=[1,2,3] , list3=list(list2) 两种方式构造非空列表

b.追加元素

   list2.append(5)  --> [1,2,3,5],追加单个元素

   list2.extend([‘a‘,‘b‘]) --> [1,2,3,5,‘a‘,‘b‘] 追加后面列表中所有元素

   list2.insert(0,‘begin‘) --> [‘begin‘,1,2,3,5,‘a‘,‘b‘] 指定位置插入元素

2)删

   list2.remove(‘a‘) --> [‘begin‘,1,2,3,5,‘b‘] 删除列表中指定值,只删除第一次出现的指定值,若指定值不在列表中则抛出ValueError

   list2.pop(1) --> [‘begin‘,2,3,5,‘b‘] 删除指定索引处的值并返回,若列表为空或索引值超出范围则抛出IndexError,默认(无参情况下)删除最后一个元素并返回,利用list.pop()可实现栈操作

3)查

    list2[0] --> 根据index查找元素 ,支持切片 ,如list[0:3] --> [‘begin‘,2,3]

    ‘begin‘ in / not in list2 --> 查看某元素是否在列表中,返回布尔值

    list2.count(‘b‘) --> 返回某元素在列表中出现次数

4) 改

    list[0]=‘end‘ --> 替换指定index索引处元素值

5) 其他操作

    反转 ,list2.reverse()  --> 将list2 元素顺序倒转

    排序,list2.sort() --> 将list2 元素进行升序排序,或者用sorted(list2)进行排序

实例:

1、用list实现栈

    栈原则,先进后出FILO。

    

技术分享
 1 #! /usr/bin/env python
 2 # -*-coding:utf-8-*-
 3 
 4 class Stack(object):
 5 
 6     def __init__(self):
 7         self.st = list()
 8 
 9     def in_stack(self,x):
10         self.st.append(x)
11         print element %s add to stack...% x
12 
13     def out_stack(self):
14         print element get out of stack...
15         print self.st.pop()
16     
17     def get_top(self):
18         print self.st[len(st)-1]
19 
20     def get_info(self):
21         return stack is :,self.st, depth: ,len(self.st)
22 if __name__==__main__:
23     ST = Stack()
24     ST.in_stack(a)
25     ST.in_stack(b) 
26     ST.in_stack(c)
27     ST.in_stack(d) 
28     ST.in_stack(e)
29     print original stack: ,ST.get_info()
30     ST.out_stack()
31     ST.out_stack()
32     print stack now is: ,ST.get_info()
Stack

 

Python基础之:List

标签:

原文地址:http://www.cnblogs.com/java-wgm/p/4330746.html

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