Использование внешних процессов в Python с помощью subprocess
В мире программирования бывают моменты, когда необходимо взаимодействовать с внешними программами из кода на Python. Для этих задач отлично подходит модуль subprocess, который предоставляет удобный способ запуска внешних процессов, передачи данных им и получения результатов выполнения.
Что такое subprocess?
subprocess - это модуль Python, который предоставляет множество возможностей для запуска новых процессов, подключения к существующим процессам, а также обмена данными между вашим кодом и внешними программами.
Пример использования subprocess:
import subprocess
# Простой пример: выполнение команды "ls" в командной строке
result = subprocess.run(['ls', '-l'], stdout=subprocess.PIPE, text=True)
# Вывод результата выполнения команды
print(result.stdout)
В данном примере мы использовали subprocess.run для выполнения команды "ls -l". Параметр stdout=subprocess.PIPE указывает на перенаправление вывода команды в переменную result.stdout. Параметр text=True гарантирует, что вывод будет в текстовом формате.
Передача данных и получение результата:
import subprocess
# Передача данных в команду и получение результата
input_data = "Hello, subprocess!"
result = subprocess.run(['echo', input_data], stdout=subprocess.PIPE, text=True)
# Вывод результата выполнения команды
print(result.stdout)
В данном примере мы использовали команду echo для вывода переданных данных. subprocess.run позволяет передавать данные в команду через параметр input.
subprocess также предоставляет множество других функций для более сложных сценариев взаимодействия с процессами, таких как запуск процесса в фоновом режиме, обработка ошибок, а также потоковый вывод данных.
#python#subprocess
#вакансия#vacancy#DE#DWH#SQL#Python#fulltime#middle#senior#Tinkoff
Компания: Тинькофф
Вакансия: Data engineer
Грейд: Middle и Senior
Занятость: Full-Time
Локация: Россия, Беларусь, Казахстан, Армения (гибрид или удаленно — по договоренности)
Вилка: 150 000—400 000 ₽
Мы ищем в команду дата-инженера. В Тинькофф можно развиваться в одном из двух направлений — системном анализе или ETL-разработке. Или совмещать их, если интересны оба. У нас большое и продвинутое хранилище данных: это 8000 объектов, более 6 000 000 SQL-запросов в сутки, 800 ТБ в Greenplum и 110 ТБ в Clickhouse 🙂
🔸Вы будете:
- Участвовать в формировании модели данных
- Проектировать и разрабатывать витрины и потоки данных на основе потребностей бизнес-пользователей
- Участвовать в проектах по развитию нашей Data Platform
- Писать скрипты SQL и Python, это опционально
- Прорабатывать интеграции с внешними системами для Data Platform
🔸Мы ждем от вас:
- Свободное владение SQL
- Опыт работы с базами данных в качестве аналитика или разработчика как минимум 2 года
- Понимание теории СУБД- и ETL-процессов
- Опыт проектирования объектов БД на основании бизнес-требований
🔸Мы предлагаем:
- Возможность работать в аккредитованной ИТ-компании
- Платформу обучения и развития «Тинькофф Апгрейд». Курсы, тренинги, вебинары и базы знаний по различным направлениям
- ДМС со стоматологией и страховку от несчастных случаев + льготное страхование вашим близким
- Частичную компенсацию затрат на спорт
- Три дополнительных дня отпуска в год
Резюме и вопросы:@angel_gilmutdinova
👉 Не забудьте уточнить, что вы из @datasciencejobs
#python#agents#ai#framework#llm#openai#python
The OpenAI Agents SDK is a Python framework that lets you easily build and connect AI agents—smart programs that can talk, use tools, and work together to solve tasks[2][3]. You can turn any Python function into a tool an agent can use, set up safety checks to control what agents do, and automatically pass tasks between different agents when needed[2][4]. The SDK manages conversation history for you, so agents remember past interactions, and it includes tools to track and debug how agents make decisions[2]. This makes it simple to create reliable, customizable AI helpers for things like customer support, research, or automation, with clear oversight and fast development.
https://github.com/openai/openai-agents-python
#Tkinter#python#AI
🐍
Create an OpenAI Video To Text Transcriber App With Tkinter
Learn to Connect Your Python Apps To OpenAI For Artificial Intelligence The Fast And Easy Way!
🔗Link
-----
Main channel: @repo_science
Coupons: @freecoupons_reposcience
-----
#python#abliteration#llm#transformer
Heretic is an automated tool that removes safety restrictions from AI language models while preserving their intelligence and capabilities. It uses advanced mathematical techniques called directional ablation to identify and disable the "refusal mechanisms" that prevent models from answering certain questions. The key benefit is that anyone can use it with a simple command—no technical expertise needed. Unlike manual methods that often damage model quality, Heretic achieves the same level of censorship removal with significantly better preservation of the original model's reasoning abilities, as measured by lower KL divergence scores. This means you get an uncensored model that still thinks clearly and produces high-quality responses.
https://github.com/p-e-w/heretic
#python#DataStructures#algorithms
🐍
Python Data Structures & Algorithms
What you will get in this course:
- Data Structures
Lists
Linked Lists
Doubly Linked Lists
Stacks & Queues
Binary Trees
Hash Tables
Graphs
- Algorithms
- Sorting
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Quick Sort
- Searching
Breadth First Search
Depth First Search
🔗Link
-----
Main channel:@repo_science
Coupons:@freecoupons_reposcience
-----
#python#Algorithms#dataStructures
🐍
Hands-On Data Structures and Algorithms with Python: Store, manipulate, and access data effectively and boost the performance of your applications
🖇3rd Edition
📆2022
✍️Dr. Basant Agarwal
🔗Link
-----
Main channel: @repo_science
Coupons: @freecoupons_reposcience
-----
Вакансия: Java Developer (with AI/ML) в крупную международную компанию
🌟 Команда IDE международной телеком-компании ищет Middle/Senior Java-разработчика для создания легковесного, но насыщенного возможностями Python-расширения под платформу на базе VSCode.
🚀 Если у вас есть глубокое понимание Java Core, опыт со структурами данных и алгоритмами, реализовывали ML/AI-функционал и встраивали его в готовые решения, присоединяйтесь к нашей международной R&D команде в СПб!
Также важны: разговорный английский, готовность к работе офисе (часы гибкие), законченное высшее образование.
🔍 Основные задачи:
• разрабатывать возможности автодополнения, навигации, рефакторинга, диагностики, запуска и отладки для Python- и Jupyter-расширений;
• поддерживать языковые конструкции Python;
• оптимизировать потребление памяти и производительность Python-расширения;
• проводить эксперименты, создавать бенчмарки и инфраструктуру для внедрения RAG-решений в AI-ассистенте.
👉 Вопросы и резюме в Telegram: @daria_hw1
#Java#AI#ML#LLM#Python#IDE#вакансия#работа#jobs#SPb
#python#ai#code#ingestion
Gitingest helps you quickly turn any Git repository into a clear, easy-to-understand text summary optimized for large language models (LLMs). You can get a digest from a GitHub URL or local directory, with details on file structure, size, and token count. It works as a command-line tool, Python package, or browser extension, making it flexible for developers and researchers to analyze code efficiently. Installing is simple via pip or pipx, and it supports private repos with a GitHub token. This saves you time by providing smart, formatted code context ready for AI tools or your own projects.
https://github.com/cyclotruc/gitingest