The example of this article summarizes Python's method of implementing list inversion. Share to everyone for your reference. The implementation methods are as follows:
Here are a few different implementations of the functions
Copy Code code as follows:
Import Math
def RESV (LI):
new = []
If Li:
CNT = Len (LI)
For I in range (CNT):
New.append (Li[cnt-i-1])
return new
def resv2 (LI):
Li.reverse ()
Return Li
def resv3 (LI):
hcnt = Int (Math.floor (len (LI)/2))
TMP = 0
For I in Range (hcnt):
TMP = Li[i]
Li[i] = li[-(i+1)]
li[-(i+1)] = tmp
Return Li
Li = [1, 2, 3, 4, 5]
Print RESV (LI)
The Ps:resv2 () method changes the order of the original list, while others do not
Some basic usage of list
1. Define List
Copy Code code as follows:
>>> li = ["A", "B", "Mpilgrim", "Z", "example"]
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' z ', ' example ']
>>> Li[0]
A
>>> Li[4]
' Example '
2. Negative list Index
Copy Code code as follows:
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' z ', ' example ']
>>> Li[-1]
' Example '
>>> Li[-3]
' Mpilgrim '
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' z ', ' example ']
>>> Li[1:3]
[' B ', ' Mpilgrim ']
>>> Li[1:-1]
[' B ', ' Mpilgrim ', ' Z ']
>>> Li[0:3]
[' A ', ' B ', ' Mpilgrim ']
3. Add elements to the list
Copy Code code as follows:
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' z ', ' example ']
>>> li.append ("new")
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' z ', ' example ', ' new ']
>>> Li.insert (2, "new")
>>> Li
[' A ', ' B ', ' new ', ' Mpilgrim ', ' z ', ' example ', ' new ']
>>> Li.extend (["Two", "elements"])
>>> Li
[' A ', ' B ', ' new ', ' Mpilgrim ', ' z ', ' example ', ' new ', ' two ', ' elements ']
4. Search List
Copy Code code as follows:
>>> Li
[' A ', ' B ', ' new ', ' Mpilgrim ', ' z ', ' example ', ' new ', ' two ', ' elements ']
>>> Li.index ("example")
5
>>> Li.index ("new")
2
>>> Li.index ("C")
Traceback (innermost last):
File "<interactive input>", line 1, in?
ValueError:list.index (x): X not in List
>>> "C" in Li
False
5. Remove an element from the list
Copy Code code as follows:
>>> Li
[' A ', ' B ', ' new ', ' Mpilgrim ', ' z ', ' example ', ' new ', ' two ', ' elements ']
>>> li.remove ("Z")
>>> Li
[' A ', ' B ', ' new ', ' Mpilgrim ', ' example ', ' new ', ' two ', ' elements ']
>>> Li.remove ("new")
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' example ', ' new ', ' two ', ' elements ']
>>> li.remove ("C")
Traceback (innermost last):
File "<interactive input>", line 1, in?
ValueError:list.remove (x): X not in List
>>> Li.pop ()
' Elements '
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' example ', ' new ', ' two ']
Remove removes the first occurrence of a value from the list.
Remove deletes only the first occurrence of a value. Here, ' new ' appears in the list two times, but Li.remove ("new") only deletes the first occurrence of ' new '.
If no value is found in the list, Python throws an exception in response to the index method.
Pop does two things: delete the last element of the list, and then return the value of the deleted element.
6.list operator
Copy Code code as follows:
>>> li = [' A ', ' B ', ' Mpilgrim ']
>>> Li = li + [' Example ', ' new ']
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' example ', ' new ']
>>> Li + + [' two ']
>>> Li
[' A ', ' B ', ' Mpilgrim ', ' example ', ' new ', ' two ']
>>> Li = [1, 2] * 3
>>> Li
[1, 2, 1, 2, 1, 2]
7. Use Join link list to become a string
Copy Code code as follows:
>>> params = {"Server": "Mpilgrim", "Database": "Master", "UID": "sa", "pwd": "Secret"}
>>> ["%s=%s"% (k, v) for K, V in Params.items ()]
[' Server=mpilgrim ', ' uid=sa ', ' database=master ', ' Pwd=secret ']
>>> ";". Join (["%s=%s"% (k, v) for K, V in Params.items ()])
' Server=mpilgrim;uid=sa;database=master;pwd=secret '
A join can only be used for a list of elements that are strings; It does not cast any type. Connecting a list that has one or more non-string elements throws an exception.
8. Split string
Copy Code code as follows:
>>> li = [' Server=mpilgrim ', ' uid=sa ', ' database=master ', ' Pwd=secret ']
>>> s = ";". Join (LI)
>>> s
' Server=mpilgrim;uid=sa;database=master;pwd=secret '
>>> s.split (";")
[' Server=mpilgrim ', ' uid=sa ', ' database=master ', ' Pwd=secret ']
>>> s.split (";", 1)
[' Server=mpilgrim ', ' Uid=sa;database=master;pwd=secret ']
Split is the opposite of join, which splits a string into a multiple-element list.
Notice that the delimiter (";") is completely removed, and it does not appear in any of the elements in the returned list.
Split accepts an optional second argument, which is the number of times to split.
Mapping resolution for 9.list
Copy Code code as follows:
>>> Li = [1, 9, 8, 4]
>>> [elem*2 for Elem in Li]
[2, 18, 16, 8]
>>> Li
[1, 9, 8, 4]
>>> Li = [elem*2 for Elem in Li]
>>> Li
[2, 18, 16, 8]
Parsing in the 10.dictionary
Copy Code code as follows:
>>> params = {"Server": "Mpilgrim", "Database": "Master", "UID": "sa", "pwd": "Secret"}
>>> Params.keys ()
[' Server ', ' uid ', ' database ', ' pwd ']
>>> params.values ()
[' Mpilgrim ', ' sa ', ' master ', ' secret ']
>>> Params.items ()
[[' Server ', ' Mpilgrim '], (' uid ', ' sa '), (' Database ', ' Master '), (' pwd ', ' secret ')]
>>> [k for K, V in Params.items ()]
[' Server ', ' uid ', ' database ', ' pwd ']
>>> [V for K, V in Params.items ()]
[' Mpilgrim ', ' sa ', ' master ', ' secret ']
>>> ["%s=%s"% (k, v) for K, V in Params.items ()]
[' Server=mpilgrim ', ' uid=sa ', ' database=master ', ' Pwd=secret ']
11. List Filter
Copy Code code as follows:
>>> li = ["A", "Mpilgrim", "foo", "B", "C", "B", "D", "D"]
>>> [Elem for Elem in Li if Len (elem) > 1]
[' Mpilgrim ', ' foo ']
>>> [Elem for Elem in Li if Elem!= "B"]
[' A ', ' Mpilgrim ', ' foo ', ' C ', ' d ', ' d ']
>>> [Elem for Elem in Li if Li.count (elem) = = 1]
[' A ', ' Mpilgrim ', ' foo ', ' C ']
I hope this article will help you with your Python programming.