Werrej[Aħbi][Uri]
Din il-lecture hija kollha dwar struttura essenzjali oħra f'Python, imsejħa tuple.
Tupli
It-tupli huma simili għal-listi, għalhekk nistgħu nużawhom biex naħżnu lista ta 'oġġetti. Iżda b'differenza mill-listi, ma nistgħux nimmodifikawhom, inżidu oġġetti ġodda jew inneħħu oġġetti eżistenti. Nistgħu ngħidu li t-tupli huma immutabbli.
Ħallini nurik. It-tupli huma identifikati bil-parentesi minflok il-parentesi kwadri fil-listi.
numbers = (4, 1, 7, 5, 0, 9)
Issa, jekk niġbdu l-lista tal-metodi għat-tuples, tista 'tara li m'għandniex il-metodi append jew daħħal sabiex oġġetti ġodda ma jistgħux jiġu miżjuda ma' dan it-tuple. Għandna biss żewġ metodi: għadd u indiċi.
Aħna nużaw "għadd" biex ngħoddu n-numru ta 'okkorrenzi ta' oġġett. L-"indiċi" jintuża biex jinstab l-indiċi tal-ewwel okkorrenza ta' oġġett. Allura, nistgħu niksbu biss informazzjoni dwar tuple, u ma nistgħux nibdluha. Mill-mod, dawn il-metodi l-oħra li tara hawn, jibdew b'żewġ underscores.
Nirreferu għal dawn bħala metodi maġiċi. Huma aktar suġġett avvanzat, u se nmissuhom fis-serje futura tagħna.
Minbarra li huma immutabbli, it-tupli jaqsmu l-biċċa l-kbira tal-karatteristiċi ta 'lista.
Prattikament, ħafna mill-ħin tkun qed tuża l-listi, iżda t-tuples huma wkoll utli. Jekk trid toħloq lista ta 'oġġetti u kun żgur li mkien fil-programm tiegħek timmodifika aċċidentalment dik il-lista, allura huwa aħjar li tuża tuple.
Ispakkjar
F'din it-taqsima, jien ser nuruk karatteristika qawwija, għandna f'python imsejħa unpacking.
Ejja niddefinixxu tuple "koordinat"
coordinate = (1, 2, 3)
Issa, immaġina li dawn huma l-koordinati għal 'x', 'y' u 'z'. Issa ejja ngħidu, irridu nġibu dawn il-valuri u nużawhom fi ftit espressjonijiet kumplessi fil-programm tagħna. Forsi, irridu ninkluduhom bħala parti minn formula kumplessa kbira.
Allura, flimkien ikollna niktbu kodiċi bħal dan:
coordinate[0] * coordinate[1] * coordinate[2]
Din il-linja ta 'kodiċi se timmultiplika l-koordinati kollha iżda huwa ineffiċjenti li tikteb il-kodiċi tagħna bħal dan. L-ewwel, ejja nużaw approċċ aħjar u naħżnu dawn il-koordinati f'varjabbli separati.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Dan huwa aħjar. Dritt? Allura xejn ġdid s'issa. Issa, ħalluni nuruk karatteristika qawwija msejħa l-unpacking u b'dan, nistgħu niksbu l-istess riżultat b'ħafna inqas kodiċi.
x, y, z, = coordinate
Issa, din il-linja waħda ta 'kodiċi hija eżattament ekwivalenti għat-tliet linji ta' kodiċi miktuba hawn fuq. Ħa nispjegalek kif taħdem.
Meta l-interpretu Python jara din id-dikjarazzjoni, se jikseb l-ewwel oġġett f'dan it-tuple u jassenjaha lill-varjabbli. Bl-istess mod, it-tieni u t-tielet oġġetti se jiġu assenjati lill-varjabbli. Meta nagħmlu dan, aħna qed nispakkjaw dan it-tuple fi 3 varjabbli. Ejja niċċekkjaw l-output tagħna.
L-ispakkjar jista' jsir ukoll bil-listi.
Dizzjunarji
Se nitgħallmu dwar dizzjunarji f'Python. Aħna nużaw dizzjunarji f'sitwazzjonijiet fejn irridu naħżnu informazzjoni li tiġi bħala pari ta' valur-ċavetta.
Hawn eżempju. Aħseb f'klijent b'ħafna attributi bħal isem, email, numru tat-telefon, indirizz, eċċ. Issa kull wieħed minn dawn l-attributi għandu valur. Pereżempju:
name = Jay
email = [email protected]
F'dan l-eżempju, iċ-ċwievet tagħna huma l-isem, l-email, u t-telefon. Kull ċavetta hija assoċjata ma 'valur għalhekk dan huwa fejn nużaw dizzjunarju. Bi dizzjunarju, nistgħu naħżnu mazz ta 'pari ewlenin-valur. Ħallini nurik kif tiddefinixxi dizzjunarju fil-python.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
Iċ-ċavetta tista 'tiġi ssettjata għal kordi, numri, boolean, jew xi ħaġa. Iċ-ċwievet huma uniċi u jistgħu jiġu definiti darba biss, jiġifieri ma nistax niddefinixxi "età" mill-ġdid b'xi numru ieħor. Huma sensittivi għall-każi wkoll.
Issa, jekk nittajpja customer["name"],
se jsejjaħ l-isem tal-klijent. Ejja nipprintjawha fuq it-terminal:
Nistgħu wkoll nużaw il-metodi b'dizzjunarji. L-istess funzjoni murija hawn fuq tista 'tiġi replikata bl-użu tal-metodu "get".
Hemm differenza waħda partikolari bejn iż-żewġ metodi ta 'hawn fuq. Ħallini nuri dan.
Tista 'tara li meta aħna sempliċement stampajna ċavetta ineżistenti, irriżulta fi żball. Min-naħa l-oħra, l-użu tal-metodu biex issejjaħ ċavetta ineżistenti jirriżulta f'riżultat ta '"ebda" li jirrappreżenta n-nuqqas ta' valur. Meta nużaw il-metodu "get", nistgħu wkoll nipprovdu valur default.
Pereżempju, jekk dan id-dizzjunarju ma jkollux ċavetta “data tat-twelid”, nistgħu nipprovduha hekk:
customer.get("birthdate", "Jan 01, 1994")
Nistgħu wkoll naġġornaw kwalunkwe ċavetta fid-dizzjunarju, simili għal lista. Ejja ngħidu li rridu naġġornaw iċ-ċavetta tal-isem fid-dizzjunarju tagħna. Hawn kif se nagħmluh.
customer["name"] = "Shahbaz"
Sintassi simili tista' tintuża biex tiżdied ċavetta ġdida fid-dizzjunarju tagħna wkoll. Ejja nżidu ċ-ċavetta "data tat-twelid" b'mod simili.
customer["birthdate"] = "Jan 01, 1994"
Allura, dan huwa l-baŜi ta 'l-użu ta' dizzjunarji f'Python. Huma estremament importanti u għandhom ħafna applikazzjonijiet fid-dinja reali.
Eżerċizzju
Int ser tikteb programm li jikkonverti ċifri fi kliem bħal dan:
Soluzzjoni
Hawn is-soluzzjoni għalikom.
phone = input("Phone: ")
digits_mapping = {
"1": "One",
"2": "Two",
"3": "Three",
"4": "Four",
"5": "Five",
"6": "Six",
"7": "Seven",
"8": "Eight",
"9": "Nine",
"0": "Zero"
}
output = " "
for ch in phone:
output += digits_mapping.get(ch, "!") + " "
print(output)
Bl-istess mod, tista 'tibni programmi divertenti oħra bħal "konvertitur emoji" Have fun PYTHONERS!
Nagħlaq!
Nispera li ħadu gost din il-lecture. Sussegwentement, se nidħlu f'aspett sinifikanti tal-ipprogrammar ta 'Python, il-funzjonijiet u l-parametri.
Ħalli Irrispondi