πŸ”§ Как Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cmd Π² Python: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π’ Python ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС (cmd) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля subprocess. Π’ΠΎΡ‚ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

import subprocess

# Команда для выполнСния
command = 'dir'

# Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
result = subprocess.run(command, shell=True, capture_output=True, text=True)

# Π’Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ²
print(result.stdout)

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π² Python Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cmd

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки (cmd) Π² Python ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ ΠΈΠ»ΠΈ взаимодСйствии с внСшними ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ cmd с использованиСм языка программирования Python.

1. ИспользованиС модуля os

ΠœΠΎΠ΄ΡƒΠ»ΡŒ os Π² Python обСспСчиваСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ взаимодСйствия с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ cmd. Для выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ cmd с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля os ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ os.system.

import os

# ΠŸΡ€ΠΈΠΌΠ΅Ρ€ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ cmd
os.system('dir')

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ вызываСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° dir, которая Π²Ρ‹Π΄Π°Π΅Ρ‚ список Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠ°ΠΏΠΎΠΊ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ Π² консоли.

2. ИспользованиС модуля subprocess

ΠœΠΎΠ΄ΡƒΠ»ΡŒ subprocess прСдоставляСт Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ способ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ cmd Π² Python. Он позволяСт ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки.

import subprocess

# ΠŸΡ€ΠΈΠΌΠ΅Ρ€ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ cmd
result = subprocess.run(['dir'], capture_output=True, text=True)

# Π’Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
print(result.stdout)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° dir выполняСтся с использованиСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ subprocess.run. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ result. Π—Π°Ρ‚Π΅ΠΌ выводится содСрТимоС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ result.stdout.

3. ИспользованиС модуля ctypes

ΠœΠΎΠ΄ΡƒΠ»ΡŒ ctypes позволяСт Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ C, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ctypes ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cmd Π² Python.

import ctypes

# Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ kernel32
kernel32 = ctypes.windll.kernel32

# Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ cmd с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ system
kernel32.system("dir")

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ функция ctypes.windll.kernel32.system для выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ dir. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ Π² консоли.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ cmd Π² Python ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ ΠΈ взаимодСйствии с внСшними ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ cmd с использованиСм ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ os, subprocess ΠΈ ctypes.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Python. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ print() input()

ΠšΠžΠœΠΠΠ”ΠΠΠ― БВРОКА Π§Π•Π Π•Π— PYTHON | OS

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Π² cmd для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

ПолноС объяснСниС условий Python: простыми словами

πŸ”Ž Как вывСсти случайный элСмСнт списка Π² Python: простой способ

πŸ˜ƒ Как Π·Π°Π΄Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅? Π›Π΅Π³ΠΊΠΈΠΉ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ Π³Π°ΠΉΠ΄ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… 😊

πŸ”§ Как Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cmd Π² Python: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ цСлочислСнноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Python: объяснСниС простыми словами 🐍

Lower Python: Ρ‡Ρ‚ΠΎ это ΠΈ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ

πŸ” Как ΡƒΠ·Π½Π°Ρ‚ΡŒ Π²ΠΈΠ΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Python: простой способ