Mụta Ọdịdị Data Python List - Akụkụ 1


Data Structure bụ nchịkọta nke ụdị data, mmekọrịta dị n'etiti ha na ọrụ ma ọ bụ arụmọrụ nwere ike itinye na data. Ụdị data nwere ike ịbụ eriri, ọnụọgụ, uru na-ese n'elu mmiri na ihe ndị ọzọ.

  1. Ihe ndị nwere ike ịgbanwe ala ha ozugbo emebere ya dị ka ịgbakwunye, imelite ma ọ bụ ihichapụ ihe.
  2. Ndepụta, Akwụkwọ ọkọwa okwu, Set, bytearray bụ ụdị ihe na-agbanwe agbanwe na Python.

  1. Enweghị ike ịgbanwe ọnọdụ ihe. Ozugbo emepụtara ihe ahụ, anyị enweghị ike ịgbakwunye, wepụ ma ọ bụ melite ihe.
  2. Eriri, Integer, Tuples, Frozenset bụ ụfọdụ ụdị ihe anaghị agbanwe agbanwe na Python.

  1. Ọdịmma data dị n'otu - Akụkụ data ga-abụ otu ụdị data (dịka: Array).
  2. Ọdịmma data dị iche iche - Ihe data nwere ike ọ gaghị abụ otu ụdị data (dịka: Ndepụta, Tuples, Set wdg…).

Tupu ịghọta ọrụ nke nhazi data arụnyere, ka anyị hụ ọrụ ole na ole arụnyere nke a ga-eji ihe nhazi data mee ihe.

  • dir(obj) – arụrụ arụ arụrụ arụ nke ga-eweghachi njirimara na usoro.
  • len(obj) - Weghachite ogologo (ọnụọgụ nke ihe) nke ihe. Arụmụka ahụ nwere ike ịbụ usoro (dị ka eriri, bytes, tuple, ndepụta, ma ọ bụ oke) ma ọ bụ mkpokọta (dị ka akwụkwọ ọkọwa okwu, set, ma ọ bụ ntọala oyi kpọnwụrụ).
  • del – A na-eji mkpụrụokwu arụnyere n’ime ya ihichapụ ihe n’ebe aha ma ọ bụ wepụ ihe n’ihe dị ka ndepụta, akwụkwọ ọkọwa okwu, wdg.
  • ụdị (obj) – Ọrụ ụdị() na-eweghachi ụdị ihe ahụ ma ọ bụ weghachi ụdị ihe ọhụrụ dabere na arụmụka agafere.
  • id() – Ọrụ a na-eweghachite “ihe njirimara” nke ihe a bụ ọnụọgụgụ ekwenyere na ọ ga-abụ ihe pụrụ iche na nke na-adịgide adịgide maka ihe a n'oge ndụ ya.

Ugbu a ka ị hụla nkọwa ole na ole dị mkpa, ka anyị gaa n'ihu na nhazi data Python.

Eke Ọgba na-abịa na nhazi data arụnyere yana ndị ọrụ nwere ike ịkọwapụta usoro data nke ha. Nhazi data arụnyere n'ime gụnyere LIST, DICTIONARY, TUPLE, na SET. Ụfọdụ n'ime ihe atụ maka nhazi data akọwapụtara onye ọrụ bụ STACK, QUEUES, TREE, HASHMAP, wdg…

Ndị mmadụ na-abịa site na asụsụ mmemme ndị ọzọ ga-ama nke ọma maka ụdị n'usoro. Ma na Python, ha abụghị ndị nkịtị.

N'ebe a, ndepụta ahụ dị ka ihe n'usoro mana ndepụta ahụ na-enye anyị ohere ịchekwa ụkpụrụ nke ụdị data ọ bụla (Heterogeneous) ebe nhazi ga-ejide data nke ụdị naanị (int, float wdg ...). Iji n'usoro ị ga-ebubata n'usoro site na modul array nke ọma.

N'ime usoro isiokwu Python a, anyị ga-eleba anya na ihe bụ usoro data na usoro data arụnyere Python.

Ndepụta bụ nhazi data nke bụ nchịkọta ụdị data dị iche iche. Kedu ihe nchịkọta ụdị data dị iche iche pụtara? Ndepụta nwere ike ịchekwa eriri, ọnụọgụ ọnụọgụ, ụkpụrụ floating point, ndepụta akwu na ihe ndị ọzọ.

Ndepụta ihe bụ \Mutable nke pụtara na ihe ndị emepụtara n'ime listi nwere ike ịnweta, gbanwee ma ọ bụ ihichapụ. Ndepụta nkwado ndenye aha. A na-ekenye ihe ọ bụla dị na listi ahụ na adreesị, enwere ike iji adreesị ahụ nweta ma ọ bụ gbanwee uru ihe ahụ. .

  • Mepụta ndepụta
  • Fanye/Nweta/gbanwee ndepụta
  • Hichapụ ndepụta

Enwere ike ịmepụta ndepụta site na iji brackets square.

>>> name_empty = []			# Empty list
>>> name = ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']	# list with string data type
>>> name_int = [1,2,3]			# list with Integer data type
>>> name_mixed = [name_int,name,1,2,3.14]	# list with nested list items.
>>> name_mixed
[[1, 2, 3], ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'], 1, 2, 3.14]
>>> name_int
[1, 2, 3]

Anyị nwere ike iji arụrụ arụ ụdị() arụrụ arụ ọrụ iji lelee ụdị ihe ahụ.

>>> type(name)

Anyị nwere ike ịnweta usoro na njirimara nke ndepụta ndepụta site na iji ọrụ dir() .

>>> dir(name)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

Anyị nwere ike chọpụta mkpokọta ihe dị na listi ahụ site na iji usoro len().

>>> len(name)

Anyị nwere ike ịmepụta ndepụta ọhụrụ site na ndetu dị ugbu a site na iji usoro list.copy() .

>>> name_new = name.copy()
>>> name_new
['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']

Anyị nwere ike itinye ihe n'ime ndepụta n'ọnọdụ ọ bụla site na iji usoro list.insert(i, x).

>>> name = ['Leo','Matt','Kane','Scott','Petter','Will']
>>> name
['Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']
>>> name.insert(0,'Tom')	# Insert method takes 2 arguments (Index position, Item)
>>> name
['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']	# Tom is inserted at the 0th position.

Anyị nwere ike iji usoro list.append(x) tinye otu ihe n'ime ndepụta ahụ. Nke a ga-etinye ihe ahụ na njedebe nke ndepụta.

>>> name = []
>>> len(name)
0
>>> name.append('Leo')
>>> name.append('Matt')
>>> name.append('Kane')
>>> print(name)
['Leo', 'Matt', 'Kane']

Anyị nwere ike iji usoro list.extend() tinye ọtụtụ ihe na ndepụta ahụ.

>>> new_name = ['Gowtham','Martin','Luis']
>>> name.extend(new_name)
>>> name
['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis']

Anyị nwekwara ike iji onye ọrụ + ijikọ ndepụta abụọ. Ma ndepụta ahụ nwere ike ịbụ ụdị data dị iche iche.

>>> a = [1,2,3]
>>> b = [2,3,3]
>>> c = a + b
>>> c
[1, 2, 3, 2, 3, 3]
>>> d = ['karthi','kenny']
>>> e = a + d
>>> e
[1, 2, 3, 'karthi', 'kenny']

Dị ka ekwuru na ndepụta ihe na-agbanwe agbanwe. Enwere ike gbanwee ihe ndepụta site n'ịtụ aka na ọnọdụ index na ịnye uru na ya.

>>> name									# Before modified
['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']
>>> name[0] = 'Karthi'
>>> name									# After Modified
['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']

Ndepụta a na-akwado ma nrịbama dị mma na nke na-adịghị mma.

Ndepụta ndenye na-amalite site na 0 na Indexing Na-adịghị mma na-amalite site na -1.

Anyị nwere ike ịnweta ihe ndepụta ahụ site na iji ọnọdụ index ha.

>>> name[0]			# Accessing the List item at index 0
'Leo'
>>> name[1]
'Matt'
>>> name[4]
'Petter'
>>> name[5]
'Will'
>>> name[-1]			# Accessing the list item with negative indexing
'Will'
>>> name[-6]
'Leo'

Anyị nwekwara ike iji slicing nweta ihe ndị dị na listi ahụ. Iberibe ihe na-enye anyị ohere ịnweta ọtụtụ ihe site n'ịkọwapụta mmalite, njedebe, nzọụkwụ nzọụkwụ.

# SYNTAX: list[starting position, ending position, Step]

>>> name[0:3]
['Tom', 'Leo', 'Matt']
>>> name[:]
['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']
>>> name[:4]
['Tom', 'Leo', 'Matt', 'Kane']
>>> name[:-2]
['Tom', 'Leo', 'Matt', 'Kane', 'Scott']
>>> name[:-1]
['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter']
>>> name[:-1:2]
['Tom', 'Matt', 'Scott']

Anyị nwere ike ịchọta ọnụọgụ ihe mere maka uru enyere site na iji usoro list.count(x).

>>> name_int = [1,1,2,3,1]
>>> name_int.count(1)
3

Anyị nwere ike ịchọta ọnọdụ Index nke ihe enyere site na iji list.index(x[, mmalite[, njedebe]]) usoro.

>>> name			# Inserted ‘Will’ at the end of the list. Now we have 2 name ‘Will’.
['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will']
>>> name.index('Will)	# Returns the index position of first occurence of x.
0
>>> name.index('Will',2)	# Starting index positon’2’ is given.
7
>>> name.index('Will',2,4)	# Starting and Ending Index position is given. Since there is no 					occurence of ‘Will’ within the given search position it will throw 					Value Error.
Traceback (most recent call last):
File "<stdin>", line 1, in 
ValueError: 'Will' is not in list

Anyị nwere ike iji usoro list.reverse() tụgharịa ihe ndị dị na listi ahụ.

>>> name
['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will']
>>> name.reverse()
>>> name
['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi']

Anyị nwere ike iji usoro list.pop(x) wepụ ihe na listi dị na ọnọdụ x. Ọrụ a ga-ewepụ ihe ahụ na listi ma gosipụta ihe ewepụrụ. Ọ bụrụ na akọwapụtaghị x, usoro pop() ga-eweghachi ihe ikpeazụ na listi ahụ.

>>> name
['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis']
>>> name.pop(0)
'Will'
>>> name
['Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis']
>>> name.pop()
'Luis'

Anyị nwekwara ike iji usoro list.remove (x) wepụ ihe ahụ na listi ahụ. Ebe a x na-ewere uru nke ihe ahụ wee tufuo Error Value ma ọ bụrụ na x anọghị na listi ahụ.

>>> name = ['Leo','Matt','Kane','Scott','Petter','Will']
>>> name.remove('Leo')
>>> name
['Matt', 'Kane', 'Scott', 'Petter', 'Will']
>>> name.remove('Leo')
Traceback (most recent call last):
  File "", line 1, in 
ValueError: list.remove(x): x not in list

Anyị nwere ike ime ndepụta ka ọ tọgbọrọ chakoo site n'inye aha ndepụta na brackets square ma ọ bụ jiri usoro list.clear().

>>> name1 = name.copy()
>>> name1
['Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin']
>>> name
['Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin']
>>> name = []			
>>> name
[]
>>> name1.clear()		
>>> name1
[]

Kama iji usoro ndetu mee ndepụta ka ọ tọgbọrọ chakoo ma ọ bụ wepụ ihe na listi anyị nwere ike iji wuru na isiokwu del iji mee omume a. Okwu del nwere ike ihichapụ ihe ndepụta na ebe nchekwa ma ọ bụ hichapụ ihe na ndepụta ma ọ bụ hichapụ ihe na iberi.

>>> name = ['Leo','Matt','Kane','Scott','Petter','Will']
>>> del name[0]
>>> name
['Matt', 'Kane', 'Scott', 'Petter', 'Will']
>>> del name[-3:]
>>> name
['Matt', 'Kane']
>>> del name[:]
>>> name
[]

Ewuru na ọrụ id() weghachite njirimara nke ihe. Nke a bụ integer nke ekwenyere na ọ ga-abụ ihe pụrụ iche na nke na-adịgide adịgide maka ihe a n'oge ndụ ya.

>>> id(name)
139979929658824
>>> del name
>>> id(name)
Traceback (most recent call last):
  File "", line 1, in 
NameError: name 'name' is not defined

Mara: anyị ejiri del() wepụrụ mgbanwe ndepụta ahụ, yabụ ọ na-atụfu njehie aha.

help() funtion:

Enyemaka wuru ọrụ() bara ezigbo uru iji nweta nkọwa gbasara otu ihe ma ọ bụ ụzọ nke ihe ahụ.

help(object)
help(object.method)

Ruo ugbu a n'isiokwu a, anyị ahụla ka anyị nwere ike isi jiri nhazi data ndepụta chekwaa, nweta, gbanwee, hichapụ ihe ndepụta site na iji usoro ndepụta. Anyị ahụwokwa ụfọdụ ọrụ arụnyere n'ime dị ka id(), dir(), ụdị(), enyemaka() nke bụ ọrụ dị irè nke ukwuu. Anyị nwekwara nghota ndepụta na Python nke na-enye ụzọ dị nkenke na nke enwere ike ịgụ nke ọma iji mepụta ndepụta.