Bạn đang cố chạy tệp python [. py] từ dòng lệnh hoặc chạy một dòng python như 'print['Hello World']'?
Nếu bạn đang cố gắng chạy thực tế. py thì bạn cần đảm bảo rằng bạn đang ở trong cùng thư mục của tệp rồi chạy "python someFile. py" từ dấu nhắc lệnh
Nếu bạn đang cố gắng chỉ chạy một chức năng như print['Hello World'] thì khi bạn đang ở dấu nhắc lệnh và nhập "python", bạn sẽ thấy '>>>' chỉ là trình giữ chỗ nên bạn sẽ không thể xóa chúng. Bây giờ bạn có thể chạy print['Hello World'] và xem kết quả
Có nhiều cách để chạy mã Python. Nhiều người học bắt đầu với IDLE đi kèm với bản cài đặt Python tiêu chuẩn. Bạn có thể đi một chặng đường dài với IDLE nhưng cuối cùng bạn sẽ muốn tiến lên các môi trường khác nhau
Một thiết lập rất phổ biến cho các dự án Python nhỏ là sử dụng trình soạn thảo văn bản như Notepad++ hoặc Sublime Text, cùng với giao diện dòng lệnh như cmd
, PowerShell
hoặc Bash
Trong video được liên kết, tôi thảo luận về nhiều cách khác nhau để chạy Python từ dòng lệnh. Tôi đang sử dụng Windows 10 và Notepad++, nhưng quy trình này rất giống với các trình soạn thảo văn bản khác và trên Mac/Linux. Đến cuối video, tôi đi vào một số chi tiết cụ thể về cách thiết lập Notepad++ để chạy tập lệnh python bằng phím tắt
Ưu điểm của việc chạy Python từ dòng lệnh
Khi bạn trở nên quen thuộc hơn với việc chạy các tập lệnh từ một dòng lệnh, các lợi thế có xu hướng tự bộc lộ. Đây là một số để bắt đầu với
- nó nhanh
- Nó nhẹ
- Bạn có quyền truy cập vào chức năng bảng điều khiển như xóa màn hình hoặc sử dụng phông chữ màu
- Bạn có thể chuyển đối số cho tập lệnh của mình
- Bạn có thể dễ dàng chuyển hướng đầu ra sang các tệp khác
Cách chạy tập lệnh Python từ dòng lệnh
Quy trình cơ bản để chạy tập lệnh Python từ dòng lệnh là tương tự bất kể nền tảng và thiết bị đầu cuối/trình soạn thảo bạn đang sử dụng
Tôi đang thực hiện một thử nghiệm và nghĩ rằng việc tận dụng Python sẽ rất thú vị. Là một phần của thử nghiệm đó, tôi sẽ cần thực thi PowerShell từ Python vì chỉ có các lệnh ghép ngắn PowerShell mới có thể thực hiện những gì tôi cần. Sau một tuần nghiên cứu một chút về việc để nó sôi, tôi đã có thể ngồi xuống và giải quyết nó vào đêm qua. Một phần là do tôi không quen với Python cho những gì tôi đang làm, và phần khác chỉ là tôi không nghĩ về vấn đề một cách tổng thể
bạn cần gì
Bạn sẽ cần cài đặt PowerShell trên hệ thống của mình và Python 3. 6+. Điều này sẽ hoạt động trên nhiều nền tảng. Tôi đã thử nghiệm trên Kubfox 20. 10 đang chạy PowerShell dưới dạng gói chụp nhanh. Bạn sẽ không cần bất kỳ thư viện bên ngoài nào vì chúng tôi sử dụng một trong nhiều thư viện tuyệt vời có sẵn với Python
Mật mã
Tất cả những gì chúng ta cần là tạo một cuộc gọi tệp ps. py, sau đó chúng ta có thể nhập mô-đun quy trình con
import subprocess
Bây giờ chúng ta có thể tạo phương thức chạy mà chúng ta sẽ sử dụng để thực thi lệnh PowerShell của mình
def run[self, cmd]:
completed = subprocess.run[["powershell", "-Command", cmd], capture_output=True]
return completed
Hãy làm cho tệp Python của chúng ta có thể thực thi được và sau đó tạo các lệnh mà chúng ta muốn thực thi. Một lệnh có cú pháp đúng và một lệnh có cú pháp sai. Điều này sẽ trình bày cách sử dụng sự trở lại của quy trình con. phương pháp chạy
if __name__ == '__main__':
hello_command = "Write-Host 'Hello Wolrd!'"
hello_info = run[hello_command]
if hello_info.returncode != 0:
print["An error occured: %s", hello_info.stderr]
else:
print["Hello command executed successfully!"]
print["-------------------------"]
bad_syntax_command = "Write-Hst 'Incorrect syntax command!'"
bad_syntax_info = run[bad_syntax_command]
if bad_syntax_info.returncode != 0:
print["An error occured: %s", bad_syntax_info.stderr]
else:
print["Bad syntax command executed successfully!"]
Đây là tập tin hoàn chỉnh
import subprocess
def run[self, cmd]:
completed = subprocess.run[["powershell", "-Command", cmd], capture_output=True]
return completed
if __name__ == '__main__':
hello_command = "Write-Host 'Hello Wolrd!'"
hello_info = run[hello_command]
if hello_info.returncode != 0:
print["An error occured: %s", hello_info.stderr]
else:
print["Hello command executed successfully!"]
print["-------------------------"]
bad_syntax_command = "Write-Hst 'Incorrect syntax command!'"
bad_syntax_info = run[bad_syntax_command]
if bad_syntax_info.returncode != 0:
print["An error occured: %s", bad_syntax_info.stderr]
else:
print["Bad syntax command executed successfully!"]
thực thi ps. py, và chúng ta có thể thấy đầu ra. Lệnh đầu tiên không thành công và trả về mã thoát bằng 0 và chúng tôi in ra rằng nó đã chạy thành công. Lệnh thứ hai có lỗi đánh máy và chúng tôi nhận được mã thoát của lệnh mà sau đó chúng tôi in lỗi xuất phát từ lỗi tiêu chuẩn
$ python ps.py
Hello command executed successfully!
-------------------------
An error occurred: %s b"\x1b[91mWrite-Hst: \x1b[91mThe term 'Write-Hst' is not recognized as the name of a cmdlet, function, script file, or operable program.\nCheck the spelling of the name, or if a path was included, verify that the path is correct and try again.\x1b[0m\n"
Sự kết luận
Vậy là xong, bây giờ bạn có thể thoải mái xây dựng bất kỳ loại lệnh nào mà bạn muốn thực thi, kể cả các lệnh nhiều dòng và nó sẽ hoạt động