Упрощенные клиенты для OpenIDE с разными уровнями простоты синтаксиса
Project description
PyOpenIDE Client
Коллекция упрощенных клиентов для OpenIDE с разными уровнями простоты синтаксиса.
🚀 Установка
pip install pyopenide-client
📖 Быстрый старт
Ультра-простой синтаксис (рекомендуется)
from pyopenide_client import *
# Создание файла
file_create("test.py", "print('Hello OpenIDE!')")
# Чтение файла
content = file_read("test.py")
print(content)
# Запуск Python кода
result = py("print('Hello from OpenIDE!')")
print(result)
# Системные команды
print(pwd()) # Текущая директория
print(whoami()) # Пользователь
print(date()) # Дата и время
print(ps()) # Процессы
Простой клиент
from pyopenide_client import SimpleOpenIDE
# Создание клиента
ide = SimpleOpenIDE()
# Работа с файлами
ide.file_create("app.py", "print('Hello World!')")
content = ide.file_read("app.py")
print(content)
# Создание папок
ide.folder_create("myproject")
ide.folder_open("myproject")
# Виртуальные окружения
ide.venv_create("myenv")
ide.venv_activate()
ide.pip_install("requests")
# Запуск кода
result = ide.run_python("app.py")
print(result)
Магический клиент
from pyopenide_client import ide
# Магические методы
ide.file.create("script.py", "print('Magic!')")
ide.folder.create("project")
ide.venv.create("env")
ide.pip.install("flask")
# Запуск
result = ide.run.python("script.py")
print(result)
Декораторный клиент
from pyopenide_client import openide, python, shell, run
# Декораторы
@openide
def my_function():
return "Hello from OpenIDE!"
@python
def calculate(x, y):
return x + y
@shell
def system_info():
return "uname -a"
# Использование
result1 = my_function()
result2 = calculate(5, 3)
result3 = system_info()
🎯 Уровни синтаксиса
1. Ультра-простой (Ultra Simple)
from pyopenide_client import *
# Файлы
file_create("test.txt", "Hello!")
content = file_read("test.txt")
file_delete("test.txt")
# Папки
folder_create("mydir")
folder_list()
folder_delete("mydir")
# Python
result = py("print('Hello!')")
result = run_python("script.py")
# Система
print(pwd())
print(whoami())
print(date())
print(ps())
2. Простой (Simple)
from pyopenide_client import SimpleOpenIDE
ide = SimpleOpenIDE()
# Файлы
ide.file_create("app.py", "print('Hello!')")
ide.file_read("app.py")
ide.file_delete("app.py")
# Папки
ide.folder_create("project")
ide.folder_list()
ide.folder_delete("project")
# Python
ide.run_python("script.py")
ide.pip_install("requests")
3. Магический (Magic)
from pyopenide_client import ide
# Магические атрибуты
ide.file.create("test.py", "print('Magic!')")
ide.folder.create("project")
ide.venv.create("env")
ide.pip.install("flask")
ide.run.python("test.py")
4. Декораторный (Decorator)
from pyopenide_client import openide, python, shell
@openide
def my_task():
return "Task completed!"
@python
def math_calc(x, y):
return x * y
@shell
def get_info():
return "ls -la"
🔧 API Reference
Глобальные функции
Файлы
file_create(name, content)- Создать файлfile_read(name)- Читать файлfile_delete(name)- Удалить файлfile_rename(old, new)- Переименовать файлfile_copy(source, target)- Копировать файлfile_move(source, target)- Переместить файлfile_info(name)- Информация о файле
Папки
folder_create(name)- Создать папкуfolder_open(name)- Открыть папкуfolder_delete(name)- Удалить папкуfolder_rename(old, new)- Переименовать папкуfolder_copy(source, target)- Копировать папкуfolder_move(source, target)- Переместить папкуfolder_list(name)- Список файловls(path)- Алиас для folder_list
Виртуальные окружения
venv_create(name)- Создать venvvenv_activate()- Активировать venvvenv_deactivate()- Деактивировать venvvenv_list()- Список venvvenv_remove(name)- Удалить venv
Python пакеты
pip_install(package)- Установить пакетpip_uninstall(package)- Удалить пакетpip_list()- Список пакетов
Запуск кода
py(code)- Выполнить Python кодsh(command)- Выполнить shell командуrun_python(script)- Запустить Python скриптrun_shell(command)- Запустить shell команду
Системные команды
pwd()- Текущая директорияwhoami()- Текущий пользовательdate()- Дата и времяuptime()- Время работы системыps()- Процессыfree()- Использование памятиdf()- Использование дискаuname()- Информация о системе
📝 Примеры проектов
Создание веб-приложения
from pyopenide_client import *
# Создание проекта
folder_create("webapp")
folder_open("webapp")
# Создание файлов
file_create("app.py", """
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello OpenIDE!'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
""")
file_create("requirements.txt", "flask==2.3.0")
# Создание виртуального окружения
venv_create("venv")
venv_activate()
# Установка зависимостей
pip_install("flask")
# Запуск приложения
result = run_python("app.py")
print(result)
Анализ данных
from pyopenide_client import *
# Создание проекта
folder_create("data_analysis")
folder_open("data_analysis")
# Создание скрипта
file_create("analyze.py", """
import pandas as pd
import numpy as np
# Создание данных
data = {'x': [1, 2, 3, 4, 5], 'y': [2, 4, 6, 8, 10]}
df = pd.DataFrame(data)
print("Данные:")
print(df)
print(f"Среднее y: {df['y'].mean()}")
""")
# Установка пакетов
venv_create("data_env")
venv_activate()
pip_install("pandas numpy")
# Запуск анализа
result = run_python("analyze.py")
print(result)
Тестирование API
from pyopenide_client import *
# Создание тестов
file_create("test_api.py", """
import requests
import json
def test_api():
try:
response = requests.get('https://api.github.com/users/octocat')
data = response.json()
print(f"Пользователь: {data['login']}")
print(f"Репозитории: {data['public_repos']}")
return True
except Exception as e:
print(f"Ошибка: {e}")
return False
if __name__ == '__main__':
test_api()
""")
# Установка зависимостей
venv_create("test_env")
venv_activate()
pip_install("requests")
# Запуск тестов
result = run_python("test_api.py")
print(result)
🔧 Конфигурация
Настройка OpenIDE
from pyopenide_client import *
# Проверка доступности global_openide
if check_global_openide():
print("global_openide доступен!")
else:
print("global_openide не установлен")
# Информация о пакете
info = get_info()
print(f"Версия: {info['version']}")
print(f"Доступные клиенты: {info['clients']}")
🐛 Обработка ошибок
from pyopenide_client import *
try:
# Попытка создать файл
file_create("test.txt", "Hello!")
print("Файл создан успешно")
except Exception as e:
print(f"Ошибка при создании файла: {e}")
try:
# Попытка запустить код
result = py("print('Hello OpenIDE!')")
print(f"Результат: {result}")
except Exception as e:
print(f"Ошибка при выполнении кода: {e}")
📚 Дополнительные ресурсы
🤝 Поддержка
Если у вас есть вопросы или проблемы:
- Создайте issue на GitHub
- Напишите на email: artemjson@gmail.com
- Проверьте документацию
📄 Лицензия
MIT License - см. файл LICENSE для подробностей.
Выберите свой уровень синтаксиса и начните кодить с OpenIDE! 🚀
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyopenide_client-1.1.2.tar.gz.
File metadata
- Download URL: pyopenide_client-1.1.2.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b4fdbc5f1b0117efce387a900e5c8d3fedda0249fed06d183ad5445283f6c922
|
|
| MD5 |
9a8253d62320c962548039fba02db1e2
|
|
| BLAKE2b-256 |
71f3887564968f3c846b31b2ae5d5f24c0d0d8be2a20423ce3ff8d6014d2b82f
|
File details
Details for the file pyopenide_client-1.1.2-py3-none-any.whl.
File metadata
- Download URL: pyopenide_client-1.1.2-py3-none-any.whl
- Upload date:
- Size: 21.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68ea3097b09b2ebddfbe826c3c2c1107c1999da657b7ce48555031426f39dc89
|
|
| MD5 |
3847602d71db0dbf62e45db41e1a47a1
|
|
| BLAKE2b-256 |
81febdee08403ab108ec017a14e8aa79136670134196e6162ac5482d45a4ace4
|