Python

Aus Flinkwiki
Wechseln zu: Navigation, Suche
Seitenübersicht
Zur Seite "Python: Turtle"
Zur Seite "Python: Tkinter"

Allgemeines

shebang

Bei Ausführung auf der Shell/Kommandozeile verweist ein "shebang" am Anfang des Skripts auf die Datei, die das Skript ausführen soll. In Linux (Ubuntu) ist dies z. B.

#! /usr/bin/python3

Gegebenenfalls muss das Skript vorher aufführbar gemacht werden:

chmod 0755 script.py

IDLE

IDLE ist die IDE des Python-Projekts.

IDLE personalisieren

> Options, Configure IDLE

Verhalten bei F5

Die Aufforderung zu speichern bei der Ausführung einer noch nicht gesicherten Datei abschalten:

  • Reiter General, At Start of Run (F5) > No Prompt

History in der IDLE-Shell aktivieren

  • Reiter Keys > history-next > Get New Keys for Selection, 'Up Arrow und Down Arrow auswählen und speichern.

String

Ein String, oder Zeichenkette, kann man als eine Sequenz von einzelnen Zeichen sehen.[1]

Auslesen von Zeichen aus der Kette

Über die Indexnummern der Zeichenkette kann man einzelne Zeichen ausgeben lassen:

>>> meinString = "Zeichenkette"
>>> print(meinString[0])
Z

Man kann die Indexnummern auch rückläufig verwenden, dann ist [-1] das letzte Zeichen der Kette:

>>> meinString = "Zeichenkette"
>>> print(meinString[-2:])
te
>>> print(meinString[:-2])
Zeichenket

Länge des Strings

Die Funktion len gibt die Länge des Strings (Anzahl der Zeichen) zurück:

>>> meinString = "Zeichenkette"
>>> len(meinString)
12
>>> len("aha")
3

upper case und lower case

Strings können in Groß- bzw. Kleinbuchstaben umgewandelt werden:

>>> string1 = "hallo"
>>> string1 = string1.upper()
>>> print(string1)
HALLO
>>> string2 = "GUTEN TAG"
>>> string2 = string2.lower()
>>> print(string2)
guten tag

Teilstrings ersetzen mit replace

>>> meinString = "Mein neues Programm"
>>> meinString = meinString.replace("neues", "schönes")
>>> print (meinString)
Mein schönes Programm

Zahlen

Es gibt Ganzzahlen (int), Fließkommazahlen (float) und komplexe Zahlen (complex).

Funktion abs()

abs() liefert den absoluten Wert einer Zahl.

>>> x = -3.25
>>> y = abs(x)
>>> print(y)
3.25

Funktion pow()

Diese Funktion berechnet die Potenz x hoch y:

>>> x = 3
>>> y = 4
>>> z = pow(x,y)
>>> print(z)
81 

Funktion round()

Diese Funktion rundet Dezimalzahlen auf bzw. ab:

>>> round(5.96734959002,2)
5.97

Die Zahl nach dem Komma bezeichnet die Anzahl der "Nachkommastellen")


Modul math

Für die Verwendung der math-Funktionen (ceil, floor, sqrt etc.) muss zuerst das Modul math importiert werden:

import math

bzw.

from math import *

Sortieren

Funktion sort(): liste.sort()


Bubblesort

def bubblesort(x, Index) :
    for i in range(Index) :
        for j in range(Index-i-1) :
          if x[j] > x[j+1] :
            x[j], x[j+1] = exchange(x[j], x[j+1]);

Beispiel:
bubblesort(liste,6)
print(liste)


datetime

Ausgebe der Indexnummer für den aktuellen Wochentag:

import datetime
tage = ["Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"]
wochentag = datetime.datetime.today().weekday()
print ("Heute ist",tage[wochentag])


pyperclip

Installation:

apt-get install python-pyperclip

Das Modul pyperclip lässt sich aber erst laden nach

sudo pip3 install pyperclip


pygame

Installation

Installation in Ubuntu:

Einführung:


Zeichnen

Beispiel Regenbogenflagge (Python 2.xxx):

import pygame
cols = ['#ff0000','#ff8000','#ffff00','#008000','#0000ff','#a000c0']
 
w, h = 1000, 618                    # width, height
y = h/6                             # width per stripe
 
d = pygame.display.set_mode((w,h))
for i, c in enumerate(cols):
    d.fill(pygame.Color(c),rect=(0,i*y,w,y*(i+1)))
 
pygame.display.flip()
pygame.image.save(d,'RainbowFlag.png')

[2]


pyinstaller

Installation:

apt install python-pip
pip install pyinstaller

pyinstaller -F erzeugt ein Stand Alone Executable. Dieses liegt dann im Verzeichnis dist.


Typographie

Sonderzeichen Herz = u'\u2764'


Formatierung

Formatierung von float-Zahlen ("Gleitkommazahlen") auf 2 Nachkommastellen: '%.2f' %

kapital = 22092.442508224092
print('%.2f' % kapital)
>>> 22092.44

[3]


Troubleshooting

Deutsche Sonderzeichen lassen sich in IDLE nicht abspeichern

Entweder an den Anfang des Skripts folgende Zeile setzen:

# -*- coding: utf-8 -*-

bzw.

# -*- coding: cp1252 -*-

[4]

oder in IDLE (Shell-Menü) folgende Einstellung vornehmen: Options > Configure IDLE > General > Default Source Encoding > UTF-8


Code liegt in Python 2 vor

>> Umwandlung mit dem Skript 2to3.py. Das Skript liegt im Verzeichnis von Python 2.

Man kann sich 2to3.py natürlich auch in das lokale Verzeichnis legen. Umwandlung mit

python -w 2to3.py py2Datei.py 

Links und Quellen



Youtube



| |