Home  >  Article  >  Backend Development  >  python data structure

python data structure

巴扎黑
巴扎黑Original
2017-07-24 13:48:351211browse

Data structure: refers to a collection of data elements organized together in some way

Mainly includes:

Sequence: mainly introduces lists, tuples, and strings

Mapping: Dictionary

Set

List: shoplist = ['apple', 'mango', 'carrot', 'banana']
Dictionary: di = {'a':123,'b':'something'}
Set: jihe = {'apple','pear','apple'}
Tuple: t = 123,456, 'hello'

1. List
Empty list: a=[]
Function method: a.append(3) >>>[3]
a.extend( [3,4,5])   >>>[3,3,4,5]    Add a list sequence
      a.insert(1,'hello')     >>>[3,' hello',3,4,5]
                  a.remove(3)                                                                                                                                            a.pop()                                                                         ;>>1 Returns the subscript of the first 4 that occurs ;[3,4] Sorting
          a.reverse()                                                                                                     ’ ’s ’ s ’ ’ s ’ ’ s ’ t                                 ‐ to ’ s ’ ’s ’ ’ t ‐ ‐‐‐‐‐ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​The first one is the element with the parameter value
        a.pop()                                                                     use   subscript to delete the element. The last value of the list is deleted by default. If the parameter is provided, the element whose subscript is the parameter value is deleted    
                                      ’ ’ s ’ ‐ ’             ‐ ‐ ‐ ‐ ‐ a. pop()                                         Delete elements,
del a[2:4] Delete the elements with subscripts 2 and 3 in table a
del a[:] Delete all elements in list a
del a Delete list
List derivation :
vec = [2,4,6]
[3*x for x in vec if x<6] >>>[6,12] 3*2,3*4
vec2 = [1,2,3]
[x*y for x in vec for y in vec2] >>>[2,4,6,4,8,12,6,12,18]
Nested list comprehension:
mat = [
[1,2,3],
[4,5,6],
[7,8,9]
]
                                                                                   ; 5, 8], [3, 6, 9]]
Thinking: What is the difference between the results of list (zip(mat)) and list (zip(*mat))
2. Tuple
Empty Tuple: t = ()
Tuple assignment: t = (123,345)
t[0]   >>>123
3. Dictionary
d = {'Jack':' jack@mail.com','Tom':'Tom@main.com'}
d['Jack']    >>>'jack@mail.com
d['Jim'] = 'Jim@sin.com' >>>{'Jim': 'Jim@sin.com', 'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}

del d['Jim'] >>>{'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}
list(d.keys( )) Will return an unordered list composed of all the keywords in the dictionary
sorted(d.keys()) Will return an unordered list composed of all the keywords in the dictionary
dict() The constructor can be directly obtained from key Create a dictionary from -value pairs
dict([('Tim',123),('Tiny',234)]) >>>{'Tiny': 234, 'Tim': 123}
Create a dictionary by derivation:
{d2:d2+'@main.com' for d2 in list(d.keys())}
com', 'Tom': 'Tom@main.com'}
Exercise: Loop through the key-value pairs in the dictionary:
for name,email in d.items():
print(name, email)
4. Set
Empty collection: A = set() ※To create an empty collection, you must use set()
Demonstration:
Basket = {'apple','orange', 'apple'} >>>{'orange', 'apple'} Note that only one repeated element is displayed?
'Apple' in Basket & GT; & GT; TRUE
'Pear' in Basket & GT; & GT; False
## 集:
A = Set ('Ababcdabca ')                                                                                                                                'b', 'a', 'm'}
a - b >>>{'c', 'd'}
b - a a >>>{'m'}
a | b >>>{'c', 'd', 'b', 'a', 'm'}
a & b >>>{'a', 'b'}
a ^ b >>>{'c','d','m'}
Set derivation:
{x for x in a if x not in ' ab'} >>>{'c','d'}

The above is the detailed content of python data structure. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn