1.1. Att Kommentera
Programmeringsteknik
(Skillnad mellan versioner)
| Rad 11: | Rad 11: | ||
| - | + | =Kommentarer= | |
<pre># Skriv ut Charles ålder | <pre># Skriv ut Charles ålder | ||
| Rad 21: | Rad 21: | ||
Kommentarer kan kanske verka överflödiga men är i själva verket mycket viktiga för att man ska kunna förstå och överblicka sina program. | Kommentarer kan kanske verka överflödiga men är i själva verket mycket viktiga för att man ska kunna förstå och överblicka sina program. | ||
| + | |||
| + | |||
| + | ==Doc-String== | ||
Versionen från 16 september 2014 kl. 15.43
| Teori | Att kommentera | Att namnge | Övningar |
Innehåll |
Kommentarer
# Skriv ut Charles ålder
print("Charles is")
age = 2012-1987
print(age, "years old")
Den första raden i det här programmet, raden som börjar med #-tecknet, är en så kallad kommentar. Raden påverkar inte vad som händer när man kör programmet utan är enbart avsedd som information för den som läser programmet. I Python räknas allt från och med #-tecknet till radslut som en kommentar.
Kommentarer kan kanske verka överflödiga men är i själva verket mycket viktiga för att man ska kunna förstå och överblicka sina program.
Doc-String
def funktionens_namn(param1, param2): '''<Kort kommentar/förklaring om vad funktionen gör> param param1: <förklara inparametern> param param2: <förklara inparametern> returns: <returvärden> '''
Exempel funktion
def calculate_c_and_f(degree, choice):
"""Converts temperatures between Celsius and Fahrenheit.
param degree: temperature in either C or F.
param choice: key to convert from C to F ('F') or F to C ('C').
returns: temperature according to param choice.
"""
convert = {'F' : degree * 9/5 + 32,
'C' : degree * 5/9 - 32}
return convert[choice]
from datetime import date
def days_remaining(asked_date):
"""Calculates number of days to an specific date.
param asked_date: the specific date, format as yyyy-mm-dd
returns: number of days to asked_date
"""
today = date.today()
asked_date = [int(x) for x in asked_date.split('-')]
asked_date = date(asked_date[0], asked_date[1], asked_date[2])
return (asked_date - today).days
Exempel klass med metod
import random
class NonPlayerCharacter():
"""Template for an ordinary villager.
"""
def __init__(self, param1, param2, param3 = "cap):
"""Example of docstring on the __init__ method.
Args:
param1 (dict of list of str): A set of standard lines to randomize.
param2 (int): Total health as in life points.
param3 (str): Type of hat villager carries, defaults to cap.
"""
self.standard_lines = param1
self.health = param2
self.hat = param3
def speaking_to_hero(self, situation):
"""Randomizes a response according to situation.
Args:
situation (str): Category for what response to use.
Returns:
A randomized response according to situation.
"""
response = random.randint(0, len(self.standard_lines[situation]-1))
return response
