Difference between revisions of "Python"
Helikopter (talk | contribs) |
Helikopter (talk | contribs) |
||
Line 4: | Line 4: | ||
python -V | python -V | ||
− | + | '''Pydoc''' <br/> | |
Läsa hjälpfiler om moduler, klasser och funktioner. | Läsa hjälpfiler om moduler, klasser och funktioner. | ||
pydoc <namn> | pydoc <namn> | ||
Line 10: | Line 10: | ||
pydoc file | pydoc file | ||
pydoc os | pydoc os | ||
+ | |||
+ | ==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> | ||
+ | |||
+ | ===HTTP Server=== | ||
+ | Det finns flera olika webbservrar skrivna i python. | ||
+ | sudo pip install lpthw.web | ||
+ | import web | ||
==Referenslista== | ==Referenslista== | ||
Line 18: | Line 40: | ||
Output, print från variabel | Output, print från variabel | ||
− | print " | + | print "The name is %s and %d." % (namn, nummer) |
Input | Input | ||
x = raw_input(">> ") | x = raw_input(">> ") | ||
x = int(raw_input(">> ")) | x = int(raw_input(">> ")) | ||
+ | |||
+ | Ta reda på möjliga funktioner/methods i ett library | ||
+ | dir() | ||
+ | dir(''library'') | ||
Läsa fil | Läsa fil | ||
Line 47: | Line 73: | ||
value = funk1(20) | value = funk1(20) | ||
− | + | Avsluta, ctrl + d | |
+ | exit(0) # i script | ||
+ | quit() # i cli | ||
+ | |||
+ | '''If_then_else''' | ||
print "Valj 1 eller 2" | print "Valj 1 eller 2" | ||
valet = raw_input(">> ") | valet = raw_input(">> ") | ||
Line 58: | Line 88: | ||
print "You die" | print "You die" | ||
− | + | '''For-loop''' | |
the_count = [1, 2, 3, 4, 5] | the_count = [1, 2, 3, 4, 5] | ||
for number in the_count: | for number in the_count: | ||
print "This is %d" % number | print "This is %d" % number | ||
− | + | '''Lista''' | |
− | |||
− | |||
− | |||
− | |||
lista = [1, 2, 3, 4, 5, 6, "hest" ]; | lista = [1, 2, 3, 4, 5, 6, "hest" ]; | ||
print lista[0:2] | print lista[0:2] | ||
Line 73: | Line 99: | ||
Append | Append | ||
− | + | '''Dictionary''' | |
dict = {'Name': 'Sara', 'Age': 20, 'Class': 'No'}; | dict = {'Name': 'Sara', 'Age': 20, 'Class': 'No'}; | ||
print dict['Name'] | print dict['Name'] | ||
Line 80: | Line 106: | ||
dict['School'] = "Yes"; | dict['School'] = "Yes"; | ||
− | + | '''Password''' <br/> | |
Get password, hidden | Get password, hidden | ||
import getpass | import getpass | ||
secretx = getpass.getpass("Enter password:") | secretx = getpass.getpass("Enter password:") | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==netaddr== | ==netaddr== | ||
netaddr är ett network address manipulation library. Man kan jobba med IP-adresser och nät. | netaddr är ett network address manipulation library. Man kan jobba med IP-adresser och nät. | ||
sudo pip install netaddr | sudo pip install netaddr | ||
− | + | Usage | |
from netaddr import * | from netaddr import * | ||
cidr = IPNetwork(raw_input("CIDR-notation: ")) | cidr = IPNetwork(raw_input("CIDR-notation: ")) | ||
Line 110: | Line 127: | ||
self.id = id | self.id = id | ||
self.name = name | self.name = name | ||
− | + | ||
vlan10 = VLAN(10, "Test") | vlan10 = VLAN(10, "Test") | ||
[[Category:Guider]] | [[Category:Guider]] |
Revision as of 19:07, 26 July 2016
Python är ett programspråk som siktar på att vara funktionellt och lättläst. Det är objektorienterat och följer med de flesta linux-distar.
Installation
python -V
Pydoc
Läsa hjälpfiler om moduler, klasser och funktioner.
pydoc <namn> pydoc open pydoc file pydoc os
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>
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(">> "))
Ta reda på möjliga funktioner/methods i ett library
dir() dir(library)
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
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:")
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")