python内置数据结构之list

作者: lintong | 来源:发表于2015-02-26 20:20 被阅读141次

    列表

    Good thing about a list is that** items in a list need not all have the same type**.

    Accessing Values in Lists:

    To access values in lists, use the square brackets for slicing along with the index or indices to obtain value available at that index. Following is a simple example:

    #!/usr/bin/python
    list1 = ['physics', 'chemistry', 1997, 2000];
    list2 = [1, 2, 3, 4, 5, 6, 7 ];
    print "list1[0]: ", list1[0]
    print "list2[1:5]: ", list2[1:5]
    

    When the above code is executed, it produces the following result:

    list1[0]: physics
    list2[1:5]: [2, 3, 4, 5]
    
    Updating Lists:

    You can update single or multiple elements of lists by giving the slice on the left-hand side of the assignment operator, and you can add to elements in a list with the **append() **method. Following is a simple example:

    #!/usr/bin/python
    list = ['physics', 'chemistry', 1997, 2000];
    print "Value available at index 2 : "
    print list[2]
    list[2] = 2001
    print "New value available at index 2 : "
    print list[2]
    

    Note: append() method is discussed in subsequent section.
    When the above code is executed, it produces the following result:

    Value available at index 2 :1997
    New value available at index 2 :2001
    
    Delete List Elements:

    To remove a list element, you can use either the del statement if you know exactly which element(s) you are deleting or the remove() method if you do not know. Following is a simple example:

    #!/usr/bin/python
    list1 = ['physics', 'chemistry', 1997, 2000]
    print list1
    del list1[2]
    print "After deleting value at index 2 : "
    print list1
    

    When the above code is executed, it produces following result:

    ['physics', 'chemistry', 1997, 2000]
    After deleting value at index 2 :
    ['physics', 'chemistry', 2000]
    

    Note: remove() method is discussed in subsequent section.

    Basic List Operations:

    Lists respond to the + and * operators much like strings; they mean concatenation and repetition here too, except that the result is a new list, not a string.
    In fact, lists respond to all of the **general sequence operations **we used on strings in the prior chapter.

    Python Expression Results Description
    len([1, 2, 3]) 3 Length
    [1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] Concatenation
    ['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] Repetition
    3 in [1, 2, 3] True Membership
    for x in [1, 2, 3]: print x, 1 2 3 Iteration

    Indexing, Slicing, and Matrixes:

    Because lists are sequences, indexing and slicing work the same way for lists as they do for strings.
    Assuming following input:
    L = ['spam', 'Spam', 'SPAM!']

    Python Expression Results Description
    L[2] 'SPAM!' Offsets start at zero
    L[-2] 'Spam' Negative: count from the right
    L[1:] ['Spam', 'SPAM!'] Slicing fetches sections

    Built-in List Functions & Methods:

    Python includes the following list functions:

    cmp(list1, list2) #Compares elements of both lists.
    len(list) #Gives the total length of the list.
    max(list) #Returns item from the list with max value.
    min(list) #Returns item from the list with min value.
    list(seq) #Converts a tuple into list.
    

    Python includes following list methods

    list.append(obj) #Appends object obj to list
    list.count(obj) #Returns count of how many times obj
    list.extend(seq) #Appends the contents of seq to list
    list.index(obj) #Returns the lowest index in list that obj appears
    list.insert(index, obj) #Inserts object obj into list at offset index
    list.pop(obj=list[-1]) #Removes and returns last object or obj from list
    list.remove(obj) #Removes object obj from list
    list.reverse() #Reverses objects of list in place
    list.sort([func]) #Sorts objects of list, use compare func if given
    

    相关文章

      网友评论

        本文标题:python内置数据结构之list

        本文链接:https://www.haomeiwen.com/subject/rkdpxttx.html