Difference between revisions of "Python"
Helikopter (talk | contribs) |
Helikopter (talk | contribs) m |
||
Line 1: | Line 1: | ||
− | Python är ett programspråk som siktar på att vara funktionellt och lättläst | + | Python är ett objektorienterat programspråk som siktar på att vara funktionellt och lättläst. |
==Installation== | ==Installation== | ||
+ | Python följer med de flesta linux-distar. | ||
python -V | python -V | ||
Line 10: | Line 11: | ||
pydoc file | pydoc file | ||
pydoc os | pydoc os | ||
+ | |||
+ | Manuellt ta reda på möjliga funktioner/methods i ett library. | ||
+ | dir() | ||
+ | dir(''library'') | ||
==Virtualenv== | ==Virtualenv== | ||
Line 28: | Line 33: | ||
sudo pip install <package> | sudo pip install <package> | ||
− | + | '''Exempel HTTP Server''' <br/> | |
Det finns flera olika webbservrar skrivna i python. | Det finns flera olika webbservrar skrivna i python. | ||
sudo pip install lpthw.web | sudo pip install lpthw.web | ||
Line 45: | Line 50: | ||
x = raw_input(">> ") | x = raw_input(">> ") | ||
x = int(raw_input(">> ")) | x = int(raw_input(">> ")) | ||
− | |||
− | |||
− | |||
− | |||
Läsa fil | Läsa fil | ||
Line 61: | Line 62: | ||
fil.close() | fil.close() | ||
− | Definiera funktion | + | Definiera funktion och kalla på den. |
def funk1(): | def funk1(): | ||
print "Detta ar en funktion" | print "Detta ar en funktion" | ||
Line 110: | Line 111: | ||
import getpass | import getpass | ||
secretx = getpass.getpass("Enter password:") | secretx = getpass.getpass("Enter password:") | ||
+ | |||
+ | '''Grundläggande sanitetscheckar''' | ||
+ | pip install pep8 pylint pyflakes | ||
+ | |||
+ | pep8 the_script.py | ||
+ | pylint the_script.py | ||
+ | pyflakes the_script.py | ||
==netaddr== | ==netaddr== |
Revision as of 18:22, 11 June 2017
Python är ett objektorienterat programspråk som siktar på att vara funktionellt och lättläst.
Installation
Python följer med de flesta linux-distar.
python -V
Pydoc
Läsa hjälpfiler om moduler, klasser och funktioner.
pydoc <namn> pydoc open pydoc file pydoc os
Manuellt ta reda på möjliga funktioner/methods i ett library.
dir() dir(library)
Virtualenv
Virtualenv är ett verktyg för att skapa isolerade Python environments. Det skapar ett directory som innehåller alla nödvändiga executables för att köra Python-projektet. Man kan sedan installera python-paket oberoende av övriga system. Virtualenvwrapper tillhandahåller ett gäng verktyg för att enklare jobba med virtualenv.
Setup
sudo pip install virtualenvwrapper echo '. /usr/local/bin/virtualenvwrapper.sh' >> .bashrc && source .bashrc
Jobba med virtualenv
mkvirtualenv test deactivate lsvirtualenv workon test
PIP
PIP är ett package management system som används för att installera software packages skrivna i Python.
sudo pip install <package>
Exempel HTTP Server
Det finns flera olika webbservrar skrivna i python.
sudo pip install lpthw.web import web
Referenslista
Här följer en lista på hur man gör diverse vanliga saker för den ovane. Detta utgår från python 2.7.
Variabel
nummer = 102
Output, print från variabel
print "The name is %s and %d." % (namn, nummer)
Input
x = raw_input(">> ") x = int(raw_input(">> "))
Läsa fil
filnamn = raw_input(">> ") fil = open(filnamn) print fil.read()
Skriva till fil
fil = open(filename, 'w') line1 = raw_input("line 1: ") fil.write(line1) fil.close()
Definiera funktion och kalla på den.
def funk1(): print "Detta ar en funktion" funk1()
Return value
def funk1(x): return x + 4 value = funk1(20)
Avsluta, ctrl + d
exit(0) # i script quit() # i cli
If_then_else
print "Valj 1 eller 2" valet = raw_input(">> ") if valet == "1": print "You is 1" elif valet == "2": print "You is 2" else: print "You die"
For-loop
the_count = [1, 2, 3, 4, 5] for number in the_count: print "This is %d" % number
Lista
lista = [1, 2, 3, 4, 5, 6, "hest" ]; print lista[0:2] lista[2] = 20;
Append
Dictionary
dict = {'Name': 'Sara', 'Age': 20, 'Class': 'No'}; print dict['Name'] dict['Age'] = 21;
Add new entry
dict['School'] = "Yes";
Password
Get password, hidden
import getpass secretx = getpass.getpass("Enter password:")
Grundläggande sanitetscheckar
pip install pep8 pylint pyflakes pep8 the_script.py pylint the_script.py pyflakes the_script.py
netaddr
netaddr är ett network address manipulation library. Man kan jobba med IP-adresser och nät.
sudo pip install netaddr
Usage
from netaddr import * cidr = IPNetwork(raw_input("CIDR-notation: ")) firstip = cidr[1] netmask = cidr.netmask
OOP
Python stödjer Object Oriented Programming vilket innebär att man kan skapa en template som man kan skapa objekt utifrån. Mallen för objekten finns i klassen och sedan skapas objektet utifrån den med olika properties.
class VLAN: def __init__(self, id, name): self.id = id self.name = name vlan10 = VLAN(10, "Test")