Khi bạn bắt đầu học một ngôn ngữ lập trình mới, chương trình đầu tiên của bạn có thể là chương trình in dòng chữ “hello world!”.
Giả sử bạn muốn làm điều này bằng Python. Có hai cách để thực hiện: sử dụng trình bao Python hoặc viết nó dưới dạng tập lệnh và chạy nó trong thiết bị đầu cuối.
Shell là gì?
Một hệ điều hành được tạo thành từ một loạt các chương trình. Chúng thực hiện các tác vụ như xử lý tệp, quản lý bộ nhớ và quản lý tài nguyên, đồng thời giúp các ứng dụng của bạn chạy trơn tru.
Tất cả công việc chúng ta làm trên máy tính, như phân tích dữ liệu trong Excel hoặc chơi trò chơi, đều được hỗ trợ bởi hệ điều hành.
Các chương trình hệ điều hành có hai loại, được gọi là vỏ bọc và nhân các chương trình.
Các chương trình hạt nhân là những chương trình thực hiện các tác vụ thực tế, chẳng hạn như tạo tệp hoặc gửi ngắt. Shell là một chương trình khác, có nhiệm vụ nhận đầu vào, quyết định và thực thi chương trình nhân cần thiết để thực hiện công việc và hiển thị đầu ra.
Vỏ còn được gọi là bộ xử lý lệnh.
Thiết bị đầu cuối là gì?
Thiết bị đầu cuối là chương trình tương tác với trình bao và cho phép chúng ta giao tiếp với nó thông qua các lệnh dựa trên văn bản. Đây là lý do tại sao nó còn được gọi là dòng lệnh.
Để truy cập thiết bị đầu cuối trên Windows, hãy nhấn biểu tượng Windows + R, nhập cmd và nhấn Enter.
Để truy cập thiết bị đầu cuối trên Ubuntu, hãy nhấn Ctrl + Alt + T.
Vỏ Python là gì?
Python là một ngôn ngữ thông dịch. Điều này có nghĩa là trình thông dịch Python đọc một dòng mã, thực thi dòng đó, sau đó lặp lại quá trình này nếu không có lỗi.
Python Shell cung cấp cho bạn một giao diện dòng lệnh mà bạn có thể sử dụng để chỉ định các lệnh trực tiếp cho trình thông dịch Python theo cách tương tác.
Bạn có thể nhận được rất nhiều thông tin chi tiết về trình bao Python trong các tài liệu chính thức.
Cách sử dụng Python Shell
Để khởi động trình bao Python, chỉ cần gõ python
và nhấn Enter trong thiết bị đầu cuối:
C:\Users\Suchandra Datta>python
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>print("hello world!")
Shell tương tác còn được gọi là REPL viết tắt của đọc, đánh giá, in, lặp. Nó sẽ đọc từng lệnh, đánh giá và thực thi nó, in kết quả đầu ra cho lệnh đó nếu có và tiếp tục quá trình này lặp đi lặp lại cho đến khi bạn thoát khỏi trình bao.
Có nhiều cách khác nhau để thoát khỏi trình bao:
- bạn có thể nhấn Ctrl+Z trên Windows hoặc Ctrl+D trên hệ thống Unix để thoát
- sử dụng lệnh thoát()
- sử dụng lệnh thoát ()
C:\Users\Suchandra Datta>python
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("HELLO WORLD")
HELLO WORLD
>>> quit()
C:\Users\Suchandra Datta>
C:\Users\Suchandra Datta>python
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\Users\Suchandra Datta>
C:\Users\Suchandra Datta>python
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> ^Z
C:\Users\Suchandra Datta>
Bạn có thể làm gì trong Python Shell?
Bạn có thể làm hầu hết mọi thứ mà ngôn ngữ Python cho phép, từ sử dụng biến, vòng lặp và điều kiện để xác định hàm, v.v.
Các >>>
là dấu nhắc trình bao nơi bạn nhập lệnh của mình. Nếu bạn có các lệnh trải dài trên nhiều dòng – ví dụ như khi bạn xác định các vòng lặp – trình bao sẽ in ...
các ký tự biểu thị rằng một dòng tiếp tục.
Hãy xem một ví dụ:
>>>
>>> watch_list = ["stranger_things_s1", "stranger_things_s2", "stranger_things_s3","stranger_things_s4"]
>>>
>>>
Ở đây chúng tôi đã xác định một danh sách với một số tên chương trình truyền hình thông qua trình bao Python.
Tiếp theo, hãy định nghĩa một hàm chấp nhận danh sách các chương trình và trả về một chương trình ngẫu nhiên:
>>> def weekend_party(show_list):
... r = random.randint(0, len(show_list)-1)
... return show_list[r]
...
Lưu ý các dòng tiếp tục (...
) của trình bao Python tại đây.
Cuối cùng, để gọi hàm từ trình bao, bạn chỉ cần gọi hàm theo cách bạn sẽ thực hiện trong tập lệnh:
>>> weekend_party(watch_list)
'stranger_things_s1'
>>>
>>>
>>> weekend_party(watch_list)
'stranger_things_s3'
>>>
>>>
>>> weekend_party(watch_list)
'stranger_things_s2'
>>>
>>>
>>> weekend_party(watch_list)
'stranger_things_s2'
>>>
>>>
>>> weekend_party(watch_list)
'stranger_things_s3'
>>>
Bạn có thể kiểm tra các mô-đun Python từ trình bao, như hình bên dưới:
>>>
>>>
>>> import numpy
>>> numpy.__version__
'1.20.1'
>>>
Bạn có thể xem các phương thức và thuộc tính mà một mô-đun cung cấp bằng cách sử dụng dir()
phương pháp:
>>>
>>> x = dir(numpy)
>>> len(x)
606
>>> x[0:3]
['ALLOW_THREADS', 'AxisError', 'BUFSIZE']
Ở đây bạn có thể thấy rằng Numpy có tổng cộng 606 phương thức và thuộc tính.
Cách chạy tập lệnh Python
Trình bao Python rất hữu ích để thực thi các chương trình đơn giản hoặc để gỡ lỗi các phần của chương trình phức tạp.
Nhưng các chương trình Python thực sự lớn với nhiều độ phức tạp được viết trong các tệp có phần mở rộng .py, thường được gọi là tập lệnh Python. Sau đó, bạn thực hiện chúng từ thiết bị đầu cuối bằng cách sử dụng Python
chỉ huy.
Cú pháp thông thường là:
python filename.py
Tất cả các lệnh chúng tôi đã thực hiện trước đây thông qua trình bao, chúng tôi cũng có thể viết nó trong một tập lệnh và chạy theo cách này.
Phần kết luận
Trong bài viết này, chúng ta đã tìm hiểu về shell, terminal, cách sử dụng Python shell. Chúng tôi cũng đã xem cách chạy tập lệnh Python từ dòng lệnh.
Tôi hy vọng bài viết này giúp bạn hiểu Python shell là gì và cách bạn có thể sử dụng nó trong cuộc sống hàng ngày của mình. Chúc bạn học tập vui vẻ!