„Python“

„Python“ marinuotų agurkėlių pamoka

„Python“ marinuotų agurkėlių pamoka

„Python“ kūrėjai nori išsaugoti duomenų objektus, tokius kaip sąrašus, žodynus, rinkinius ir klases, į failą. Šioje situacijoje pradeda veikti „Python“ marinatų modulis.

„Pickle“ yra „Python“ integruotas modulis, naudojamas nuoseklinant ir deserializuojant „Python“ objekto struktūrą. Serializavimas yra „Python“ objekto pavertimo baitų srautu (0 ir 1) procesas. Jis taip pat žinomas kaip marinavimas. Marinavimo proceso tikslas yra išsaugoti „Python“ objektą diske baitų srauto pavidalu. „Python“ marinuotą objektą galima konvertuoti atgal į „Python“ objektą, ir šis procesas yra žinomas kaip nenuimamas arba deserializuojamas.

„Python“ sūrymas yra naudingas, kai turime išsaugoti „Python“ objekto būseną ir atlikti duomenų analizės užduotį. Pavyzdžiui, kai dirbame su giliųjų mokymosi algoritmais ir norime juos naudoti vėliau. Esant tokiai būklei, mes galime jį laikyti diske, kad būtų galima naudoti vėliau. Tačiau marinavimas nėra geras pasirinkimas, kai dirbame su įvairiomis programavimo kalbomis. Marinuoto objekto negalima nuskinti jokia kita programavimo kalba, nes jis neturi palaikymo keliomis kalbomis. Objektas, marinuotas „Python“, taip pat gali būti nuskintas tik „Python“. Tas pats taikoma ir skirtingoms „Python“ versijoms; objektas, marinuotas konkrečioje „Python“ versijoje, gali būti netinkamai išrinktas kitoje versijoje. Norėdami atlikti marinavimo ir nuskinimo procesą, pirmiausia turime importuoti marinato modulį į savo „Python“ scenarijų.

Šiame straipsnyje mes išmoksime naudoti „Python“ marinatų modulį, kad atliktumėte marinavimą ir nuskynimą su pavyzdžiais.

„Python“ marinavimo pavyzdžiai

Pažiūrėkime keletą pavyzdžių, kaip suprasti „Python“ marinavimo procesą. Prieš atlikdami marinavimo operaciją, turime atidaryti failą rašymo režimu. Failas turi būti atidarytas dvejetainiu režimu, nes marinuotas objektas saugomas baitų sraute. Išpylimas () yra sūrymo modulio funkcija, naudojama sūrymui sukurti. Tam reikia dviejų argumentų, t.e., marinuojamas „Python“ objektas ir failas, kuriame bus išsaugotas marinuotas objektas.

1 pavyzdys: marinuokite sąrašą

Pateiktame pavyzdyje mes sukūrėme skaičių sąrašą ir marinavome jį marinuotu agurku.dump () funkcija.

#importuojantis marinuotų agurkų modulis
importuoti marinatą
#deklaruoti skaičių sąrašą
num_list = [1,2,3,4,5,6]
#surinkti sąrašą ir išsaugoti faile
listfile = open ('listPickle', 'wb')
marinatas.dump (num_list, listfile)
sąrašo failas.Uždaryti()
spausdinti ("Sąrašo sūrymas sėkmingai sukurtas.")

Rezultatas

Išvestis rodo, kad sąrašas sėkmingai marinuojamas.

2 pavyzdys: marinuokite žodyną

Dabar marinuokime „Python“ žodyno objektą. Studentų žodynas yra sukurtas ir marinuojamas naudojant marinuotą agurką.dump () funkcija.

#importuojantis marinuotų agurkų modulis
importuoti marinatą
#deklaruoti mokinio žodyną
std_dict = 'vardas': 'Jonas', 'amžius': 22, 'klasė': 'BS'
# išrinkti žodyną ir išsaugoti faile
dictfile = atidaryti ('dictPickle', 'wb')
marinatas.dump (std_dict, dictfile)
diktofailas.Uždaryti()
spausdinti ("Žodynas sėkmingai marinuojamas.")

Rezultatas

Išvestis rodo, kad žodynas sėkmingai rauginamas.

3 pavyzdys: marinuokite po du

Dabar marinuokime „Python“ paketo objektą. Sudėtinis objektas sukuriamas ir marinuojamas naudojant marinuotą agurką.dump () funkcija.

#importuojantis marinuotų agurkų modulis
importuoti marinatą
# deklaruoti po du
my_tuple = ((1,1), (2,2), (3,3), (4,4))
# išrinkti žodyną ir išsaugoti faile
tuplefile = open ('tuplePickle', 'wb')
marinatas.dump (my_tuple, tuplefile)
tuplefile.Uždaryti()
spausdinti ("Duobutė sėkmingai marinuota.")

Rezultatas

Išvestis rodo, kad paketo objektas sėkmingai rauginamas.

Gerai! Viskas buvo apie skirtingų „Python“ objektų marinavimą.

„Python“ nenuėmimo pavyzdžiai

Dabar pažiūrėkime keletą „Python“ išrinkimo proceso pavyzdžių. Mes išrenkame visus „Python“ objektus, kuriuos mes išrinkome ankstesniuose pavyzdžiuose. Rinkimo metu marinuotas failas atidaromas skaitymo režimu. Marinatas.funkcija load () naudojama norint panaikinti „Python“ objekto pasirinkimą. Failo objektas perduodamas kaip argumentas sūrymui.apkrovos () funkcija.

1 pavyzdys: Nuimkite sąrašą

Marinuoto sąrašo objektas nėra nuskintas ir priskiriamas naujam sąrašo objektui.

#importuojantis marinuotų agurkų modulis
importuoti marinatą
#opening the listPickle failas skaitymo nuotaika
marinatas_in = atidaryti ('listPickle', 'rb')
#unplikuoti sąrašą ir priskirti sąrašo objektui
num_list = marinatas.pakrauti (marinuoti)
spausdinti (num_list)

Rezultatas

2 pavyzdys: Nuimkite žodyną

Marinuotas studento žodyno objektas yra nenuimamas ir priskiriamas naujam žodyno objektui.

#importuojantis marinuotų agurkų modulis
importuoti marinatą
# atidaryti failą „dictPickle“ skaitymo nuotaika
marinatas_in = atidaryti ('dictPickle', 'rb')
#dicko nubraukimas ir priskyrimas žodyno objektui
std_dict = marinatas.pakrauti (marinuoti)
spausdinti (std_dict)

Rezultatas

3 pavyzdys: Nuimkite „tupleOutput“

Marinuoto paketo objektas yra nerapijuojamas ir priskiriamas naujam objektui.

#importuojantis marinuotų agurkų modulis
importuoti marinatą
#opening failą tuplePickle skaitymo nuotaika
marinatas_in = atidaryti ('tuplePickle', 'rb')
#unplikuoti paketą ir priskirti žodyno objektui
std_dict = marinatas.pakrauti (marinuoti)
spausdinti (std_dict)

Rezultatas

 Išvada

„Pickle“ yra įmontuotas „Python“ modulis, naudojamas atlikti serializavimo ir deserializavimo operacijas. Serializavimas ir deserializavimas taip pat žinomi kaip atitinkamai marinavimas ir nemaršymas. Per marinavimą galime išsaugoti „Python“ objektą baitų srauto pavidalu ir vėliau jį nuskaityti. Nuimimo procesas reiškia marinuoto objekto pavertimą Python objektu. Šiame straipsnyje pavyzdžiais paaiškinamas rauginimo ir nuskinimo procesas.

Peržiūrėkite pelės mygtukus skirtingai programinei įrangai naudodami „X-Mouse Button Control“
Galbūt jums reikia įrankio, kuris galėtų pakeisti jūsų pelės valdymą kiekvienoje jūsų naudojamoje programoje. Tokiu atveju galite išbandyti programą, ...
„Microsoft Sculpt Touch“ belaidžio pelės apžvalga
Neseniai skaičiau apie „Microsoft Sculpt Touch“ belaidę pelę ir nusprendė ją nusipirkti. Kurį laiką naudojęs, nusprendžiau pasidalinti savo patirtimi....
„AppyMouse“ ekrano „Trackpad“ ir pelės žymeklis, skirtas „Windows“ tabletėms
Planšetinių kompiuterių vartotojai dažnai praleidžia pelės žymeklį, ypač kai įprasta naudoti nešiojamus kompiuterius. Jutiklinio ekrano išmanieji tele...