Python: Unterschied zwischen den Versionen
Flinh1 (Diskussion | Beiträge) (→Screen-Methoden) |
Flinh1 (Diskussion | Beiträge) (→Turtle) |
||
Zeile 156: | Zeile 156: | ||
* pensize(x) | * pensize(x) | ||
− | * pencolor(x,y) | + | * pencolor(x,y) # Zeichenfarbe, Füllfarbe |
− | Zeichenfarbe, Füllfarbe | ||
* penup(), up() | * penup(), up() | ||
Zeile 165: | Zeile 164: | ||
* goto(x,y) | * goto(x,y) | ||
− | * shape(x) | + | * shape(x) # Vordefinierte Werte: ''arrow, turtle, circle, square, triangle, classic'' |
− | Vordefinierte Werte: ''arrow, turtle, circle, square, triangle, classic'' | ||
− | * speed(x) | + | * speed(x) # 1 = langsam, 6 = normal, 10 = schnell |
− | 1 = langsam, 6 = normal, 10 = schnell | ||
---- | ---- | ||
Zeile 177: | Zeile 174: | ||
Mit diesen Methoden wird der Hintergrund für Turtle definiert. | Mit diesen Methoden wird der Hintergrund für Turtle definiert. | ||
− | * setup(x,y) | + | * setup(x,y) # Stellt Breite und Höhe ein. |
− | Stellt Breite und Höhe ein. | ||
− | * bgcolor(x) | + | * bgcolor(x) # Stellt die Hintergrundfarbe ein. |
− | Stellt die Hintergrundfarbe ein. | ||
− | * bgpic(x) | + | * bgpic(x) # Definiert Hintergrundbild. |
− | Definiert Hintergrundbild. | ||
Version vom 15. Mai 2019, 08:10 Uhr
Inhaltsverzeichnis
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.
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])
Tkinter
Tkinter ist die Python-Schnittstelle zu Tk. Tkint ist ein Akronym für "Tk interface". Tk wurde ursprünglich als eine GUI-Erweiterung für Tcl entwickelt.
Import
Unter Python2 wird Tkinter großgeschrieben, unter Python3 kleingeschrieben: tkinter.
Python2: from Tkinter import *
Python3: from tkinter import *
Widgets
button canvas checkbutton combobox entry frame label labelframe listbox menu menubutton message notebook tk_optionMenu panedwindow progressbar radiobutton scale scrollbar separator sizegrip spinbox text treeview
Fenster
tk_chooseColor - lässt ein Pop-up-Fenster erscheinen, dass es dem Benutzer ermöglicht eine Farbe aus einer Palette auszuwählen. tk_chooseDirectory - Pop-up-Fenster, dass einem Benutzer erlaubt interaktiv ein Verzeichnis auszuwählen. tk_dialog - ein Pop-up-Fenster in Form eines Dialogfenster tk_getOpenFile - Pop-up-Fenster, dass einem Benutzer erlaubt interaktiv eine Datei zum Öffnen auszuwählen. tk_getSaveFile - Pop-up-Fenster, dass einem Benutzer erlaubt interaktiv eine Datei zum Schreiben auszuwählen. tk_messageBox - Pop-up-Fenster mit Message. tk_popup - Pop-up-Fenster. toplevel - erzeugt und verändert Widgets auf höchster Ebene.
Geometrie-Manager
place grid pack
Beispiel Textbox
from tkinter import * w1=Tk() w1.geometry('100x100') w1.config(bg='#f00') w1.title('red windows') w2=Tk() w2.geometry('300x300') w2.config(bg='grey') w2.title('grey windows') t1 = Label(w1, text='text in red window', fg='yellow', bg = 'grey') t1.config(font = ('Times', 25)) t1.pack() w1.mainloop() w2.mainloop()
Turtle
Methoden
- hideturtle()
- forward(x)
- backward(x)
- left(x)
- right(x)
- pensize(x)
- pencolor(x,y) # Zeichenfarbe, Füllfarbe
- penup(), up()
- pendown(), down()
- goto(x,y)
- shape(x) # Vordefinierte Werte: arrow, turtle, circle, square, triangle, classic
- speed(x) # 1 = langsam, 6 = normal, 10 = schnell
Screen-Methoden
Mit diesen Methoden wird der Hintergrund für Turtle definiert.
- setup(x,y) # Stellt Breite und Höhe ein.
- bgcolor(x) # Stellt die Hintergrundfarbe ein.
- bgpic(x) # Definiert Hintergrundbild.
Beispiel:
import turtle ninja = turtle.Turtle() hintergrund = turtle.Screen() ninja.pensize(20) ninja.shape("classic") hintergrund.bgpic("/home/pfad/Bilder/hintergrundbild.gif")
Farben
turtle.color(rot,grün,blau)
- Rot
(1,0,0)
- Grün
(0,1,0)
- Blau
(0,0,1)
- Gelb
(1,1,0)
- Cyan
(0,1,1)
- Schwarz
(0,0,0)
- Weiß
(1,1,1)
- Gold
(0.9,0.75,0)
- Hellrosa
(1,0.7,0.75)
- Orange
(1,0.5,0)
- Orange
(0.9,0.5,0.15)
The X11 Color Set:
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:
pip3 install pygame
Zeichnen
Beispiel Regenbogenflagge:
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')
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
Troubleshooting
Deutsche Sonderzeichen lassen sich in IDLE nicht abspeichern
Entweder an den Anfang des Skripts folgende Zeile setzen:
# -*- coding: utf-8 -*-
bzw.
# -*- coding: cp1252 -*-
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
| |