Video: Cloud Computing - Computer Science for Business Leaders 2016 2024
Python stelt u in staat om permanent inhoud op te slaan. Een bestand kan gestructureerde of ongestructureerde gegevens bevatten. Een voorbeeld van gestructureerde gegevens is een database waarin elke record specifieke informatie bevat. Een werknemersdatabase zou kolommen bevatten voor naam, adres, medewerker-ID, enzovoort. Elke record zou een individuele medewerker zijn en elke medewerkerrecord bevat de velden naam, adres en werknemer-ID.
Een voorbeeld van ongestructureerde gegevens is een tekstverwerkingsbestand waarvan de tekst elke willekeurige inhoud kan bevatten. Er is geen vereiste volgorde voor de inhoud van een alinea en zinnen kunnen een willekeurig aantal woorden bevatten. In beide gevallen moet de toepassing echter weten hoe CRUD-bewerkingen met het bestand moeten worden uitgevoerd.
Dit betekent dat de inhoud op een dusdanige manier moet worden voorbereid dat de toepassing zowel naar het bestand kan schrijven als er uit kan lezen.
Zelfs bij tekstverwerkingsbestanden moet de tekst een aantal regels volgen. Neem even aan dat de bestanden eenvoudige tekst zijn. Toch moet elke paragraaf een soort scheidingsteken hebben dat de toepassing vertelt om een nieuwe alinea te beginnen.
De toepassing leest de alinea totdat deze het scheidingsteken ziet en begint vervolgens met een nieuwe alinea. Hoe meer de tekstverwerker eigenschappen biedt, des te meer gestructureerd de uitvoer wordt. Wanneer de tekstverwerker bijvoorbeeld een methode biedt voor het opmaken van de tekst, moet de opmaak als onderdeel van het uitvoerbestand worden weergegeven.
De signalen die inhoud bruikbaar maken voor permanente opslag zijn vaak verborgen in het zicht. Alles wat u ziet als u met het bestand werkt, zijn de gegevens zelf. De opmaak blijft om een aantal redenen onzichtbaar:
-
De cue is een besturingsteken, zoals een regelterugloop of regelinvoer, die standaard standaard onzichtbaar is op platformniveau.
-
De toepassing is afhankelijk van speciale tekencombinaties, zoals komma's en dubbele aanhalingstekens, om de gegevensinvoer te beperken. Deze speciale tekencombinaties worden tijdens het lezen door de toepassing gebruikt.
-
Een deel van het leesproces converteert het teken naar een ander formulier, bijvoorbeeld wanneer een tekstverwerkingsbestand leest in inhoud die is opgemaakt. De opmaak wordt op het scherm weergegeven, maar op de achtergrond bevat het bestand speciale tekens om de opmaak aan te geven.
-
Het bestand heeft feitelijk een andere indeling, zoals eXtensible Markup Language (XML). Het alternatieve formaat wordt geïnterpreteerd en op het scherm gepresenteerd op een manier die de gebruiker kan begrijpen.
Andere regels zijn waarschijnlijk aanwezig voor het formatteren van gegevens. Microsoft gebruikt bijvoorbeeld eigenlijk een. zip-bestand om de nieuwste tekstverwerkingsbestanden (het. docx) -bestand te bewaren. Het gebruik van een gecomprimeerde bestandscatalogus, zoals. zip, maakt het opslaan van een grote hoeveelheid informatie in een kleine ruimte mogelijk. Het is interessant om te zien hoe anderen gegevens opslaan, omdat u vaak efficiëntere en veiligere gegevensopslagsystemen kunt vinden.
Nu u een beter idee hebt van wat er kan gebeuren als onderdeel van het voorbereiden van inhoud voor schijfopslag, is het tijd om naar een voorbeeld te kijken. In dit geval is de opmaakstrategie vrij eenvoudig. In al dit voorbeeld wordt invoer geaccepteerd, geformatteerd voor opslag en de opgemaakte versie op het scherm gepresenteerd (in plaats van het nog op te slaan).
-
Open een Python-bestandsvenster.
Je ziet een editor waarin je de voorbeeldcode kunt typen.
-
Typ de volgende code in het venster - druk na elke regel op Enter:
class FormatData: def __init __ (self, Name = ", Age = 0, Married = False): self. Name = Name self. Age = Age self. Married = Getrouwd def __str __ (self): OutString = "'{0}',, {2}". Format (zelf. Naam, zelf. Leeftijd, zelf. Getrouwd) return OutString
This is een verkorte klasse. Normaal gesproken zou je toegang bieden (getter- en settermethoden) en foutopsporingscode. (Onthoud dat gettermethoden alleen-lezen toegang bieden tot klassegegevens en settermethoden < biedt alleen-schrijftoegang tot klassegegevens.) De klasse werkt echter goed voor de demonstratie. De belangrijkste functie om naar te kijken, is de functie __str __ (). Merk op dat deze de uitvoergegevens op een specifieke manier opmaakt. De reekswaarde, zelfnaam, staat tussen enkele aanhalingstekens.Elk van de waarden wordt ook gescheiden door een komma.
Dit is eigenlijk een vorm van een standaard uitvoerformaat, door komma's gescheiden waarde (CSV), die wordt gebruikt op een breed scala aan platforms omdat het is eenvoudig te vertalen en is in platte tekst, dus niets speciaals is nodig om ermee te werken.
Sla de code op alsFormattedData. py.
-
Open een ander Python-bestandsvenster.
-
Typ de volgende code in het venster - druk na elke regel op Enter:
-
from FormattedData import FormatData NewData = [FormatData ("George", 65, True), FormatData ("Sally", 47, False), FormatData ("Doug", 52, Waar)] voor invoer in NewData: print (Entry)
De code begint met het importeren van alleen de FormatData-klasse van FormattedData. In dit geval maakt het niet uit, omdat de module FormattedData slechts één enkele klasse bevat. U moet echter deze techniek in gedachten houden wanneer u slechts één klasse uit een module nodig hebt.
Meestal werkt u met meerdere records wanneer u gegevens op schijf opslaat. Mogelijk hebt u meerdere alinea's in een tekstdocument of meerdere records, zoals in dit geval. Het voorbeeld maakt een lijst met records en plaatst deze in NewData. In dit geval vertegenwoordigt NewData het volledige document. De voorstelling zal waarschijnlijk andere vormen aannemen in een productieapplicatie, maar het idee is hetzelfde.
Elke toepassing die gegevens opslaat, doorloopt een soort van uitvoerlus.In dit geval drukt de lus de gegevens op het scherm gewoon af.
Kies Uitvoeren → Module uitvoeren.
-
Dit is een weergave van hoe de gegevens in het bestand zouden verschijnen. In dit geval wordt elke record gescheiden door een combinatie van een combinatie van een regeleinde en een linefeed-besturingselement. Dat wil zeggen, George, Sally en Doug zijn allemaal afzonderlijke records in het bestand. Elk
-veld (gegevenselement) wordt gescheiden door een komma. Tekstvelden worden tussen aanhalingstekens weergegeven, zodat ze niet worden verward met andere gegevenstypen.