Arbeta med utdata

Slutförd

När du börjar lära dig något programmeringsspråk provar du först några kodinstruktioner i en repl-loop (read-evaluate-print). Du vill dock snart gå in i en seriös utveckling. Det innebär att lära sig mer om språket, hur man strukturerar ett program med mera.

Ett Python-program

Om du vill skapa ett program i Python måste du lagra det i en fil. Filen ska ha tillägget .py.

Tanken med ett program är att göra något eller utföra en uppgift. Om du vill att programmet ska göra något måste du lägga till instruktioner eller instruktioner för att utföra uppgiften. En instruktion kan till exempel skriva ut text eller beräkna något. Ett exempelprogram med namnet python.py kan se ut ungefär så här:

# program.py
sum = 1 + 2
print(sum)

Köra ett program

Anta att du har skapat ett program som består av flera instruktioner. Du kör det genom att starta det körbara Python-programmet i en konsol. En konsol är ett kommandoradsprogram som gör att du kan interagera med operativsystemet. Om du vill köra ett program skriver du namnet på det körbara Python-programmet följt av namnet på programmet. Här är ett exempel på en sådan körning:

python3 program.py

Om du kör ett sådant program visas följande resultat i konsolen:

3

Funktionen print()

En av de första sakerna du förmodligen kommer att göra är att skriva ut till en konsol. I konsolen kan du köra kommandon och program. Du kan också ange information och visa information som text på skärmen.

Om du vill skriva information till konsolen kan du använda funktionen och implementera den print() som en kärnfunktion. Eftersom det är en kärnfunktion har du åtkomst till den om Python är installerat. Om du vill använda print() i ditt program ger du det ett argument:

print("show this in the console")

Om du kör programmet nu visas följande resultat i konsolen:

show this in the console

Observera hur kommandot anropar print() med parenteser. Det är så du kör en funktion. Om du använde hakparenteser ([]) i stället för parenteser skulle det inte fungera, vilket du ser om du kör programmet igen med den här koden:

print["show this in the console"]

Så här ser utdata ut:

Traceback (most recent call last):
  File "/<path>/program.py", line 1, in <module>
    print["show this in the console"]
TypeError: 'builtin_function_or_method' object is not subscriptable

En annan sak att märka är användningen av dubbla citattecken (""). Det är så du deklarerar en så kallad strängliteral, med värdet som det du skriver ut: "visa detta i konsolen".

Variabler

För att komma någonstans med kodning måste du förstå att du arbetar med data. När programmet arbetar med data kan du behöva komma ihåg ett visst värde under programmets körning. För det använder du variabler.

I följande exempel görs en beräkning och den lagras i variabler:

sum = 1 + 2 # 3
product = sum * 2
print(product)

Datatyper

En variabel förutsätter en datatyp. I föregående program sum hämtar du typen int. Det finns dock många fler datatyper. Här är några som du troligtvis kommer att stöta på:

Typ Beskrivning Exempel
Numerisk typ Tal, med eller utan decimaler int, float, complex, no = 3
Texttyp Teckensträng str = "a literal string"
Boolesk typ Booleskt continue = True

Det finns mer komplexa typer, men vi börjar med dessa.

Här är en kod som visar några av de föregående typerna:

planets_in_solar_system = 8 # int, pluto used to be the 9th planet, but is too small
distance_to_alpha_centauri = 4.367 # float, lightyears
can_liftoff = True
shuttle_landed_on_the_moon = "Apollo 11" #string 

Hur vet du vilken typ något har? Om du ser de data som tilldelas till variabeln enligt följande kod kan du upptäcka dem:

distance_to_alpha_centauri = 4.367 # looks like a float

Det andra sättet är att använda type() funktionen:

type(distance_to_alpha_centauri) ## <class 'float'>

Operatorer

Med operatorer kan du utföra olika åtgärder på variabler och deras värden. Den allmänna tanken är att du har en vänster sida och en höger sida och en operator i mitten:

<left side> <operator> <right side>

Så här skulle ett verkligt exempel på den föregående platshållarkoden se ut:

left_side = 10
right_side = 5
left_side / right_side # 2

I det här exemplet används ett snedstreck (/) för att dividera left_side värdet med värdet right_side .

Det finns många fler operatorer. I den här lektionen beskrivs några viktiga som du sannolikt kommer att stöta på.

Python använder två typer av operatorer: aritmetik och tilldelning.

Aritmetiska operatorer

Med aritmetiska operatorer utför du beräkningar som addition, subtraktion, division och multiplikation. Här är en delmängd av aritmetiska operatorer som du kan använda:

Typ Beskrivning Exempel
+ Additionsoperator som lägger till två värden tillsammans 1 + 1
- Subtraktionsoperator som tar bort värdet för den högra sidan från vänster sida 1 - 2
/ Divisionsoperator som delar den vänstra sidan så många gånger som den högra sidan anger 10 / 2
* multiplikationsoperator 2 * 2

Tilldelningsoperatorer

Du kan använda tilldelningsoperatorer för att tilldela värden till en variabel under variabelns livscykel. Här är några tilldelningsoperatorer som du förmodligen kommer att stöta på när du lär dig att skapa program:

Operator Exempel
= x = 2
x innehåller nu 2.
+= x += 2
x ökas med 2. Om den innehåller 2 tidigare har den nu värdet 4.
-= x -= 2
x minskas med 2. Om den innehåller 2 tidigare har den nu värdet 0.
/= x /= 2
x dividerat med 2. Om den innehåller 2 tidigare har den nu värdet 1.
*= x *= 2
x multiplicerat med 2. Om den innehåller 2 tidigare har den nu värdet 4.

Datum

När du skapar program kommer du förmodligen att interagera med datum. Ett datum i ett program innebär vanligtvis både kalenderdatum och tid.

Du kan använda ett datum i olika program, till exempel:

  • Säkerhetskopieringsfil:. Att använda ett datum som en del av en säkerhetskopieringsfils namn är ett bra sätt att ange när en säkerhetskopia gjordes och när den måste göras igen.
  • Villkor:. Du kanske vill ha en specifik logik när det finns ett visst datum.
  • Mått:. Datum används för att kontrollera prestanda för kod för att (till exempel) mäta den tid det tar att köra en funktion.

Om du vill arbeta med ett datum måste du importera modulen date :

from datetime import date

Du kan sedan anropa de funktioner som du vill arbeta med. För att hämta dagens datum kan du anropa today() funktionen:

date.today()

Om du vill visa datumet i konsolen kan du använda print() funktionen. Funktionen print() tar många typer av data som indata. Så här kan du visa dagens datum:

print(date.today())

Konvertering av datatyp

Du vill använda ett datum med något, vanligtvis en sträng. Om du till exempel vill visa dagens datum i konsolen kan du stöta på ett problem:

print("Today's date is: " + date.today())

Det du får är ett fel:

Traceback (most recent call last):
  File "/<path>/program.py", line 4, in <module>
    print("Today's date" + date.today())
TypeError: can only concatenate str (not "datetime.date") to str

Den sista raden i meddelandet anger vad problemet är. Du försöker använda operatorn + och kombinera två olika datatyper, en sträng och ett datum.

För att den här koden ska fungera måste du konvertera datumet till en sträng. Du utför en sådan konvertering med hjälp av verktygsfunktionen str():

print("Today's date is: " + str(date.today()))

Utdata ser ut så här:

Today's date is: <date>