Python console/de: Difference between revisions
(Created page with "{{VeryImportantMessage|(Januar 2020) FreeCAD wurde ursprünglich für die Arbeit mit Python 2 entwickelt. Da Python 2 im Jahr 2020 das Ende seiner Lebensdauer erreicht hat, wi...") |
(Created page with "* Es ist möglich in der Python-Konsole durch die API zu scrollen. Beispiel: *# In der Konsole tippt man: {{incode|FreeCAD.}} *# Ein Dialogfenster zur Auswahl optionaler Klassen oder Funktionen erscheint. *# Beim Scrollen durch die Liste können die Beschreibungen jeder Klasse bzw. Funktion gelesen werden. *# Wird eine Funktion ausgewählt und mit einem {{incode|.}} ergänzt, können die Schritte 2 und 3 wiederholt werden, um tiefer in die API vorzudringen. * Tab-/Worte...") |
||
(33 intermediate revisions by 5 users not shown) | |||
Line 2: | Line 2: | ||
{{VeryImportantMessage|(Januar 2020) FreeCAD wurde ursprünglich für die Arbeit mit Python 2 entwickelt. Da Python 2 im Jahr 2020 das Ende seiner Lebensdauer erreicht hat, wird die zukünftige Entwicklung von FreeCAD ausschließlich mit Python 3 erfolgen und die Abwärtskompatibilität wird nicht unterstützt.}} |
{{VeryImportantMessage|(Januar 2020) FreeCAD wurde ursprünglich für die Arbeit mit Python 2 entwickelt. Da Python 2 im Jahr 2020 das Ende seiner Lebensdauer erreicht hat, wird die zukünftige Entwicklung von FreeCAD ausschließlich mit Python 3 erfolgen und die Abwärtskompatibilität wird nicht unterstützt.}} |
||
= |
<span id="Introduction"></span> |
||
== Einleitung == |
|||
{{TOCright}} |
|||
The [[Python console|Python console]] is a panel that runs an instance of the [[Python|Python]] interpreter which can be used to control FreeCAD processes, and create and modify objects and their properties. |
|||
Die [[Python console/de|Python-Konsole]] ist ein Feld, das Teil der FreeCAD-[[interface/de|Benutzerschnittstelle]] ist. Es führt eine Instanz des [[Python/de|Python]]-Interpreters aus, mit dem FreeCAD-Prozesse gesteuert sowie Objekte und deren Eigenschaften erstellt und geändert werden können. |
|||
The Python console in FreeCAD has basic syntax highlighting, able to differentiate with various styles and colors, comments, strings, numeric values, built in functions, printed text output, and delimiters like parentheses and commas. These properties of the console can be configured in the [[Preferences_Editor|Preferences editor]]. |
|||
Sie kann über den Menüeintrag {{MenuCommand|Ansicht → Paneele → Python-Konsole}} eingeblendet werden. |
|||
Die Python-Konsole in FreeCAD verfügt über eine grundlegende Syntaxhervorhebung, die es ermöglicht, mit verschiedenen Stilen und Farben, Kommentaren, Zeichenketten, numerischen Werten, eingebauten Funktionen, gedruckter Textausgabe und Trennzeichen wie Klammern und Kommata zu unterscheiden. Diese Eigenschaften der Konsole können im [[Preferences_Editor/de|Voreinstellungseditor]] konfiguriert werden. |
|||
[[File:FreeCAD_Python_console.png|800px]] |
[[File:FreeCAD_Python_console.png|800px]] |
||
{{Caption| |
{{Caption|Die Python Konsole zeigt Meldungen an, wenn FreeCAD gerade gestartet wurde.}} |
||
= |
<span id="Scripting"></span> |
||
⚫ | |||
{{Emphasis| |
{{Emphasis|Für absolute Anfänger, siehe:}} [[Introduction to Python/de|Einführung in Python]], und [[Python scripting tutorial/de|Python Tutorium Skripten]]. |
||
{{Emphasis| |
{{Emphasis|Siehe auch:}} [[FreeCAD Scripting Basics/de|FreeCAD Grundlagen Skripten]], und [[Scripted objects/de|Geskriptete Objekte]]. |
||
Die Python Konsole kann grundlegende Code Vervollständigung durchführen, wenn ein Punkt nach einem Objekt steht; sie zeigt öffentliche Methoden und Attribute (Variablen) des aktuellen Objekts (Klasse), zum Beispiel {{incode|obj.}} |
|||
Die Konsole ist auch in der Lage, den Dokumentationsstring einer bestimmten Funktion anzuzeigen, wenn die öffnende Klammer geschrieben wird, z.B. {{incode|function(}} |
|||
[[File:FreeCAD_Python_console_example.png|800px]] |
[[File:FreeCAD_Python_console_example.png|800px]] |
||
{{Caption| |
{{Caption|Beispiel Python Code, der Objekte in der 3D Ansicht erzeugt.}} |
||
The Python console automatically loads some modules, and defines some aliases. |
|||
Die FreeCAD Initialisierungsskripte laden automatisch einige Module und definieren einige Aliase. In der Python Konsole stehen diese daher zur Verfügung |
|||
{{Code|code= |
{{Code|code= |
||
App = FreeCAD |
App = FreeCAD |
||
Line 34: | Line 38: | ||
}} |
}} |
||
Daher sind diese gleichwertig |
|||
Therefore these are equal |
|||
{{Code|code= |
{{Code|code= |
||
Line 41: | Line 45: | ||
}} |
}} |
||
{{Emphasis|Hinweis:}} diese vorinstallierten Module und Aliase sind nur über die in das FreeCAD Programm eingebettete Python Konsole verfügbar. Wenn Du FreeCAD als Bibliothek in einem externen Programm verwendest, musst Du daran denken, die Module {{incode|FreeCAD}} und {{incode|FreeCADGui}} zu laden und die notwendigen Aliase zu definieren, wenn Du möchtest. |
|||
⚫ | |||
<span id="Actions"></span> |
|||
== Maßnahmen == |
|||
Ein Rechtsklick auf die Python Konsole zeigt einige Befehle an: |
|||
* {{MenuCommand|Kopiere}}: speichert den markierten Text in der Zwischenablage zum späteren Einfügen; er ist deaktiviert, wenn nichts markiert ist. |
|||
* {{MenuCommand|Kopiere Befehl}}: speichert den markierten Befehl in der Zwischenablage zum späteren Einfügen; er ist deaktiviert, wenn nichts markiert ist. |
|||
* {{MenuCommand|Kopiere Historie}}: die gesamte Historie der in dieser Sitzung eingegebenen Python-Befehle kopieren. |
|||
* {{MenuCommand|Save history as}}: die gesamte Historie der in dieser Sitzung eingegebenen Python Befehle in eine Textdatei speichern. |
|||
* {{MenuCommand|Einfügen}}: zuvor kopierten Text aus der Zwischenablage in die Python-Konsole einfügen. |
|||
* {{MenuCommand|Alles Wählen}}: wählt den gesamten Text in der Python-Konsole aus. |
|||
* {{MenuCommand|Konsole löschen}}: löscht alle in der Python Konsole eingegebenen Befehle. Dies ist nützlich, wenn die Python Konsole voll von Meldungen und zuvor eingegebenen Befehlen ist, die beim Testen einer neuen Funktion ablenken könnten. Dies ist nur ästhetisch, da dieser Befehl weder vorhandene Variablen löscht noch die importierten Module in der Sitzung löscht. |
|||
* {{MenuCommand|Dateiname einfügen}}: öffnet einen Dialog zum Suchen einer Datei im System, dann fügt es den vollständigen Pfad der Datei ein. Dies ist nützlich, um Funktionen zu testen, die eine Eingabedatei verarbeiten, ohne den gesamten Namen in die Konsole schreiben zu müssen, was fehleranfällig ist. Dieser Befehl führt die Datei nicht aus und importiert sie nicht als Python-Modul, sondern gibt nur den vollständigen Pfad der Datei zurück. |
|||
* {{MenuCommand|Wort umbrechen}}: sehr lange Zeilen umbrechen, die die horizontale Dimension der Python-Konsole überschreiten. |
|||
<span id="Notes"></span> |
|||
==Hinweise== |
|||
* Es ist möglich in der Python-Konsole durch die API zu scrollen. Beispiel: |
|||
*# In der Konsole tippt man: {{incode|FreeCAD.}} |
|||
*# Ein Dialogfenster zur Auswahl optionaler Klassen oder Funktionen erscheint. |
|||
*# Beim Scrollen durch die Liste können die Beschreibungen jeder Klasse bzw. Funktion gelesen werden. |
|||
*# Wird eine Funktion ausgewählt und mit einem {{incode|.}} ergänzt, können die Schritte 2 und 3 wiederholt werden, um tiefer in die API vorzudringen. |
|||
* Tab-/Wortergänzung wird unterstützt, wenn das Tastaturkürzel {{KEY|Ctrl}}+{{KEY|Space}} verwendet wird. |
|||
Right click on the Python console shows some commands: |
|||
* {{MenuCommand|Copy}}: stores the selected text in the clipboard for later pasting; it is disabled if nothing is selected. |
|||
* {{MenuCommand|Copy command}}: stores the selected command in the clipboard for later pasting; it is disabled if nothing is selected. |
|||
* {{MenuCommand|Copy history}}: copy the entire history of Python commands entered in this session. |
|||
* {{MenuCommand|Save history as}}: save the entire history of Python commands entered in this session to a text file. |
|||
* {{MenuCommand|Paste}}: paste previously copied text in the clipboard to the Python console. |
|||
* {{MenuCommand|Select all}}: selects all text in the Python console. |
|||
* {{MenuCommand|Clear console}}: erases all commands entered into the Python console. This is useful if the Python console is full of messages and previously entered commands that may be distracting when testing a new function. This is merely aesthetic, as this command doesn't delete existing variables nor clears the imported modules in the session. |
|||
* {{MenuCommand|Insert file name}}: opens a dialog to search for a file in the system, then it inserts the full path of the file. This is useful to test functions that process an input file, without having to write the entire name in the console, which is error prone. This command does not run the file, and does not import it as a Python module, it just returns the full path of that file. |
|||
* {{MenuCommand|Word wrap}}: wrap very long lines that exceed the horizontal dimension of the Python console. |
|||
{{Interface}} |
{{Interface navi{{#translation:}}}} |
||
{{Std Base navi{{#translation:}}}} |
|||
{{Userdocnavi}} |
{{Userdocnavi{{#translation:}}}} |
Latest revision as of 13:14, 1 April 2023
Einleitung
Die Python-Konsole ist ein Feld, das Teil der FreeCAD-Benutzerschnittstelle ist. Es führt eine Instanz des Python-Interpreters aus, mit dem FreeCAD-Prozesse gesteuert sowie Objekte und deren Eigenschaften erstellt und geändert werden können.
Sie kann über den Menüeintrag Ansicht → Paneele → Python-Konsole eingeblendet werden.
Die Python-Konsole in FreeCAD verfügt über eine grundlegende Syntaxhervorhebung, die es ermöglicht, mit verschiedenen Stilen und Farben, Kommentaren, Zeichenketten, numerischen Werten, eingebauten Funktionen, gedruckter Textausgabe und Trennzeichen wie Klammern und Kommata zu unterscheiden. Diese Eigenschaften der Konsole können im Voreinstellungseditor konfiguriert werden.
Die Python Konsole zeigt Meldungen an, wenn FreeCAD gerade gestartet wurde.
Skripten
Für absolute Anfänger, siehe: Einführung in Python, und Python Tutorium Skripten.
Siehe auch: FreeCAD Grundlagen Skripten, und Geskriptete Objekte.
Die Python Konsole kann grundlegende Code Vervollständigung durchführen, wenn ein Punkt nach einem Objekt steht; sie zeigt öffentliche Methoden und Attribute (Variablen) des aktuellen Objekts (Klasse), zum Beispiel obj.
Die Konsole ist auch in der Lage, den Dokumentationsstring einer bestimmten Funktion anzuzeigen, wenn die öffnende Klammer geschrieben wird, z.B. function(
Beispiel Python Code, der Objekte in der 3D Ansicht erzeugt.
Die FreeCAD Initialisierungsskripte laden automatisch einige Module und definieren einige Aliase. In der Python Konsole stehen diese daher zur Verfügung
App = FreeCAD
Gui = FreeCADGui
Daher sind diese gleichwertig
App.newDocument()
FreeCAD.newDocument()
Hinweis: diese vorinstallierten Module und Aliase sind nur über die in das FreeCAD Programm eingebettete Python Konsole verfügbar. Wenn Du FreeCAD als Bibliothek in einem externen Programm verwendest, musst Du daran denken, die Module FreeCAD
und FreeCADGui
zu laden und die notwendigen Aliase zu definieren, wenn Du möchtest.
Maßnahmen
Ein Rechtsklick auf die Python Konsole zeigt einige Befehle an:
- Kopiere: speichert den markierten Text in der Zwischenablage zum späteren Einfügen; er ist deaktiviert, wenn nichts markiert ist.
- Kopiere Befehl: speichert den markierten Befehl in der Zwischenablage zum späteren Einfügen; er ist deaktiviert, wenn nichts markiert ist.
- Kopiere Historie: die gesamte Historie der in dieser Sitzung eingegebenen Python-Befehle kopieren.
- Save history as: die gesamte Historie der in dieser Sitzung eingegebenen Python Befehle in eine Textdatei speichern.
- Einfügen: zuvor kopierten Text aus der Zwischenablage in die Python-Konsole einfügen.
- Alles Wählen: wählt den gesamten Text in der Python-Konsole aus.
- Konsole löschen: löscht alle in der Python Konsole eingegebenen Befehle. Dies ist nützlich, wenn die Python Konsole voll von Meldungen und zuvor eingegebenen Befehlen ist, die beim Testen einer neuen Funktion ablenken könnten. Dies ist nur ästhetisch, da dieser Befehl weder vorhandene Variablen löscht noch die importierten Module in der Sitzung löscht.
- Dateiname einfügen: öffnet einen Dialog zum Suchen einer Datei im System, dann fügt es den vollständigen Pfad der Datei ein. Dies ist nützlich, um Funktionen zu testen, die eine Eingabedatei verarbeiten, ohne den gesamten Namen in die Konsole schreiben zu müssen, was fehleranfällig ist. Dieser Befehl führt die Datei nicht aus und importiert sie nicht als Python-Modul, sondern gibt nur den vollständigen Pfad der Datei zurück.
- Wort umbrechen: sehr lange Zeilen umbrechen, die die horizontale Dimension der Python-Konsole überschreiten.
Hinweise
- Es ist möglich in der Python-Konsole durch die API zu scrollen. Beispiel:
- In der Konsole tippt man:
FreeCAD.
- Ein Dialogfenster zur Auswahl optionaler Klassen oder Funktionen erscheint.
- Beim Scrollen durch die Liste können die Beschreibungen jeder Klasse bzw. Funktion gelesen werden.
- Wird eine Funktion ausgewählt und mit einem
.
ergänzt, können die Schritte 2 und 3 wiederholt werden, um tiefer in die API vorzudringen.
- In der Konsole tippt man:
- Tab-/Wortergänzung wird unterstützt, wenn das Tastaturkürzel Ctrl+Space verwendet wird.
- Preferences Editor, Interface Customization
- Main window: Standard menu, Main view area, 3D view, Combo view (Tree view, Task panel, Property editor), Selection view, Report view, Python console, Status bar, DAG view, Workbench Selector
- Auxiliary windows: Scene inspector, Dependency graph
- File: New, Open, Close, Close All, Save, Save As, Save a Copy, Save All, Revert, Import, Export,Merge project, Project information, Print, Print preview, Export PDF, Recent files, Exit
- Edit: Undo, Redo, Cut, Copy, Paste, Duplicate selection, Refresh, Box selection, Box element selection, Select All, Delete, Send to Python Console, Placement, Transform, Alignment, Toggle Edit mode, Edit mode, Preferences
- View:
- Miscellaneous: Create new view, Orthographic view, Perspective view, Fullscreen, Bounding box, Toggle axis cross, Clipping plane, Texture mapping, Toggle navigation/Edit mode, Appearance, Random color, Workbench, Status bar
- Standard views: Fit all, Fit selection, Isometric, Dimetric, Trimetric, Home, Front, Top, Right, Rear, Bottom, Left, Rotate Left, Rotate Right
- Freeze display: Save views, Load views, Freeze view, Clear views
- Draw style: As is, Points, Wireframe, Hidden line, No shading, Shaded, Flat lines
- Stereo: Stereo red/cyan, Stereo quad buffer, Stereo Interleaved Rows, Stereo Interleaved Columns, Stereo Off, Issue camera position
- Zoom: Zoom In, Zoom Out, Box zoom
- Document window: Docked, Undocked, Fullscreen
- Visibility: Toggle visibility, Show selection, Hide selection, Select visible objects, Toggle all objects, Show all objects, Hide all objects, Toggle selectability, Toggle measurement, Clear measurement
- Toolbars: File, Edit, Clipboard, Workbench, Macro, View, Structure, Help
- Panels: Tree view, Property view, Selection view, Tasks, Python console, DAG view, Model, Report view
- Link navigation: Go to linked object, Go to the deepest linked object, Select all links
- Tree view actions: Sync view, Sync selection, Sync placement, Pre-selection, Record selection, Single document, Multi document, Collapse/Expand, Initiate dragging, Go to selection, Selection Back, Selection Forward
- Tools: Edit parameters, Save image, Load image, Scene inspector, Dependency graph, Project utility, Measure distance, Add text document, View turntable, Units calculator, Customize, Addon manager
- Macro: Macro recording, Macros, Recent macros, Execute macro, Attach to remote debugger, Debug macro, Stop debugging, Step over, Step into, Toggle breakpoint
- Help: Help, FreeCAD Website, Donate, Users documentation, Python scripting documentation, Automatic Python modules documentation, FreeCAD Forum, FreeCAD FAQ, Report a bug, About FreeCAD, What's This
- Erste Schritte
- Installation: Herunterladen, Windows, Linux, Mac, Zusätzlicher Komponenten, Docker, AppImage, Ubuntu Snap
- Grundlagen: Über FreeCAD, Graphische Oberfläche, Mausbedienung, Auswahlmethoden, Objektname, Programmeinstellungen, Arbeitsbereiche, Dokumentstruktur, Objekteigenschaften, Hilf FreeCAD, Spende
- Hilfe: Tutorien, Video Tutorien
- Arbeitsbereiche: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework