# Oppgave 1, oppgaver til Python, Perl by ojp13483

VIEWS: 16 PAGES: 3

									Oppgaver programmeringsspråk, Python
# Oppgave 1, oppgaver til Python, Perl.
# Skal telle antall linjer og ord i en fil
import string

def countLinesWords():
       TextFile = open("test.txt", "r")
       Text=TextFile.read()
       TextFile.close()
       antall_linjer = 0
       antall_ord = 0
       for line in open("test.txt").xreadlines():
               antall_linjer += 1

       for words in string.split(Text):
              antall_ord += 1

       print antall_linjer
       print antall_ord

# Kaller metoden
countLinesWords()
# Oppgave 2, oppgaver til Python, Perl.
# Generer random passord. Input er antall passord og lengden på passordene

import random
import string

def makeRandom(number_password, pwd_length):
      " Docstring - "

      # String.letters inneholder alle bokstaver legger også til tall
      random_liste = string.letters + string.digits

      # Teller for å gi rett antall passord
      number = 1

      # De ferdige lagde passordene legges i denne listen
      finished_passwords = []

      # While løkke for å gi rett antall passord
      while number <= number_password:
             # Teller for å gi rett lengde på passord
             counter = 1

             # Klar for passord
             password = ""

             # Whileløkke for å gi rett lengde på passord
             while counter <= pwd_length:
                    # Trekke ut et random tall/bokstav av gangen
                    pwd_char = random.choice(random_liste)

                    # Legger random tall/bokstaver i en streng
                    password += pwd_char

                    # Øker lengde på passord med 1
                    counter += 1

             # Legger ferdige passord med lengde pwd_length i listen
             #finished_passwords.append(password)

             # Alternativ måte å legge i liste
             finished_passwords.insert(counter-1, password)

             # Øker antall passord med 1
             number += 1

      # Returnere listen med passord
      return finished_passwords

print(makeRandom(5,8))
import string
# Gjør at vi kan kalle på standard stringfunksjoner

def countClients():
       """ Docstring - Du har en loggfil. Skal trekke ut kliennavn, skriv ut hvilken klient
       som er logget på fles ganger """
       # Åpner loggfilen
       f = open("test.txt","r")

       # Liste for å legge klientnavn i
       klienter = []

       # Går gjennom hver linje i filen
       for line in f.readlines():

              # Tar ut første del av linjen, frem til puntum,
              # 0 henviser til første element. Legges i listen
              klienter.append (str(line.split(" ") [0]))

       i=0
       # Sortere for å samle klienter
       klienter.sort()

       # En liste i en liste, vil inneholde antall ganger klient har logget på og klientnavn
       ny_liste = [[]]

       while i < len(klienter):
               # Telller hvor mange ganger hver klient er logget på
               x = klienter.count(klienter[i])

              # Legger antall ganger og klientnavn i listen
              ny_liste.extend([[x, klienter[i]]])

              i=i+x

       # Finner ut hvor mange elementer det er i listen,
       # detter for å hente ut siste element
       antall_elementer = len(ny_liste)

       # Sortere på antall, altså x
       ny_liste.sort()

       # Kan også bruke reverse og hente ut element 1, index 0
       #ny_liste.reverse()

       # Skal hente ut siste element, lengde - 1
       ant = ny_liste[antall_elementer - 1]
       navn = ant[1]
       antall_palogget = ant[0]
       print "Klient som er logget på flest ganger er", navn
       print "Klienten er logget på", antall_palogget, "ganger"

# Kaller metoden
countClients()

								
To top