spinetoolbox.widgets.python_repl_widget
¶
Class for a custom SpineConsoleWidget to use as Python REPL.
author: |
|
---|---|
date: | 14.3.2019 |
Module Contents¶
-
class
spinetoolbox.widgets.python_repl_widget.
PythonReplWidget
(toolbox)[source]¶ Bases:
spinetoolbox.widgets.spine_console_widget.SpineConsoleWidget
Python Repl Widget class.
Class constructor.
-
disconnect_signals
(self)[source]¶ Disconnect signals. Needed before switching to another Python kernel.
-
python_kernel_name
(self)[source]¶ Returns the name of the Python kernel specification and its display name according to the selected Python environment in Settings. Returns None if Python version cannot be determined.
-
launch_kernel
(self, k_name, k_display_name)[source]¶ Check if selected kernel exists or if it needs to be set up before launching.
-
check_and_install_requirements
(self)[source]¶ Prompts user to install IPython and ipykernel if they are missing. After installing the required packages, installs kernelspecs for the selected Python if they are missing.
Returns: Boolean value depending on whether or not the user chooses to proceed.
-
is_package_installed
(self, package_name)[source]¶ Checks if given package is installed to selected Python environment.
Parameters: package_name (str) – Package name Returns: True if installed, False if not Return type: (bool)
-
start_package_install_process
(self, package_name)[source]¶ Starts installing the given package using pip.
Parameters: package_name (str) – Package name to install using pip
-
handle_package_install_process_finished
(self, retval)[source]¶ Handles installing package finished.
Parameters: retval (int) – Process return value. 0: success, !0: failure
-
start_kernelspec_install_process
(self)[source]¶ Install kernel specifications for the selected Python environment.
-
handle_kernelspec_install_process_finished
(self, retval)[source]¶ Handles installing package finished.
Parameters: retval (int) – Process return value. 0: success, !0: failure
-
start_python_kernel
(self)[source]¶ Starts kernel manager and client and attaches the client to the Python Console.
-
handle_executing
(self, code)[source]¶ Slot for handling the ‘executing’ signal. Signal is emitted when a user visible ‘execute_request’ has been submitted to the kernel from the FrontendWidget.
Parameters: code (str) – Code to be executed (actually not ‘str’ but ‘object’)
-
handle_executed
(self, msg)[source]¶ Slot for handling the ‘executed’ signal. Signal is emitted when a user-visible ‘execute_reply’ has been received from the kernel and processed by the FrontendWidget.
Parameters: msg (dict) – Response message (actually not ‘dict’ but ‘object’)
-
receive_iopub_msg
(self, msg)[source]¶ Message received from the IOPUB channel. Note: We are only monitoring when the kernel has started successfully and ready for action here. Alternatively, this could be done in the Slot for the ‘executed’ signal. However, this Slot could come in handy at some point. See ‘Messaging in Jupyter’ for details: https://jupyter-client.readthedocs.io/en/latest/messaging.html
Parameters: msg (dict) – Received message from IOPUB channel
-
push_vars
(self, var_name, var_value)[source]¶ Push a variable to Python Console session. Simply executes command ‘var_name=var_value’.
Parameters: - var_name (str) – Variable name
- var_value (object) – Variable value
Returns: True if succeeded, False otherwise
Return type: (bool)
Reimplemented to add custom actions.
-