Sử dụng trình thông dịch Python¶
Chạy trình thông dịch¶
Trình thông dịch Python thường được cài đặt tại /usr/local/bin/python3.5
;
Bổ sung đường dẫn /usr/local/bin
vào Unix shell’s
(Command line của các HĐH Unix)
để chạy trình thông dịch từ mọi đường dẫn bằng câu lệnh:
python3.5
Đối với shell. [1] Khi cài đăth Trình thông dịch Python có thể chọn cài ở một
đường dẫn khác (VD /usr/local/python
cũng là một đường dẫn hay được
chọn.)
Trên Windowns, Python thường được cài đặt mặc định tại C:\Python35
,
Bạn có thể thay đổi đường dẫn này khi cài đặt khi chạy bộ cài. Dể add đường
dẫn cho Windown dùng câu lệnh
set path=%path%;C:\python35
Hoặc dễ hơn thì nhớ tick vào ô add-path khi chạy bộ cài đặt nhé.
Để thoát khỏi trình thông dịch khi đang ở trên Command-line nhấn Control-D
trên Unix ; Control-Z
hoặc Control-C
trên Windows. Cũng có thể dùng
lệnh : quit()
để thoát.
Tính năng soạn thảo nhiều dòng trên trình thông dịch cũng dễ, nhấn Shift-Enter
để xuống hàng, Nhấn Control-P
để in ra toàn bộ những gì đã command nhé ;
Xem phần Interactive Input Editing and History Substitution để hiểu rõ hơn.
Trình thông dịch Python hoạt động tương tự như Unix shell: khi được gọi với một đầu nhập chuẩn đã kết nối với một thiết bị đầu cuối (tty device), nó đọc và thực hiện các lệnh một cách tương tác; khi được gọi với tham số là một tên tập tin hoặc với đầu vào chuẩn là một tập tin, nó đọc và thực hiện Kịch bản chứa trong tập tin đó.
Một cách nữa để chạy trình thông dịch từ CMD là dùng lệnh
python -c command [arg] ...
, Trong đó:
-c
là một option để thông báo cho Shell là chạy câu lệnh.- command là câu lệnh của bạn, câu lệnh phải nằm trong hai dấu “ nhé.
VD python -c "print('Chao ban')"
- arg là biến mà bạn truyền vào. Phần này bạn nào mới bắt đầu thì thấy khó
hiểu, sau này chạy vài chương trình rồi bạn sẽ hiểu rõ.
Tương tự như thực thi file, thực thi module từ CMD bằng lệnh :
python -m module [arg] ...
.
Khi tập tin kịch bản (script file) được sử dụng, Sẽ rất hữu dụng nếu có thể
chạy chương trình và chuyển sang chế độ tương tác ngay sau đó. Điều này thực
hiện được bằng cách dùng Option -i
Xem tất cả các Options tại mục Command line and environment.
Truyền tham số¶
Bộ thông dịch nhận biết tên chương trình và các tham số khác được truyền vào
chương trình trong biến sys.arvg
dưới dạng một danh sách các chuỗi.
Độ dài tối thiểu là một; khi không có kịch bản hoặc thông số truyền vào,
sys.argv[0]
là một chuỗi rỗng. Khi tên kịch bản được truyền vào là '-'
(có nghĩa là đầu vào chuẩn), sys.argv[0]
được gán thành '-'
. Khi
-c
command được sử dụng, sys.argv[0]
được gán thành ‘-c’. Khi -m
module được sử dụng, sys.argv[0]
được gán là tên đầy đủ của mô-đun đã nạp.
Các tùy chọn sau -c
command hoặc -m
module không được sử dụng bởi
trình thông dịch Python mà truyền vào sys.arvg
để cho command hay module
xử lý.
Chế độ tương tác¶
Khi các lệnh được đọc từ một tty, trình thông dịch được xem là đang trong
chế độ tương tác
. Trong chế độ này nó nhắc lệnh tiếp theo với dấu nhắc
chính (primary prompt), thường là ba dấu lớn hơn (>>>
); với các dòng
tiếp nối (continuation line), nó sẽ nhắc với dấu nhắc thứ (secondary prompt),
mặc định là ba dấu chấm (...
). Trìn thông dịch sẽ in một thông báo chào
mừng, số hiệu phiên bản và thông báo bản quyền trước khi hiện dấu nhắc:
$ python3.5
Python 3.5 (default, Sep 16 2015, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Các dòng nối tiếp được dùng khi nhập vào các cấu trúc nhiều dòng. Hãy xem ví
dụ dưới, chú ý câu lệnh if
statement:
>>> the_world_is_flat = True
>>> if the_world_is_flat:
... print("Be careful not to fall off!")
...
Be careful not to fall off!
Xem thêm về Interactive Mode.
Trình thông dịch và môi trường¶
Mã hóa mã nguồn¶
Mặc định, Python sử dụng bãng mã UTF-8 , do đó bao gồm cả những ký tự đặc biệt, và hầu hết các ký tự như chữ Ả Rập, China. Riêng việc định danh thì các thư viện chuẩn thì chỉ sử dụng bảng mã ASCII nhé. Để Editor mà bạn dùng hiển thị đúng tất cả các ký tự UTF-8, nó cần (Thường thì có hết rồi) có font thích hợp..
Có thể sử dụng các bảng mã khác trong các tập tin nguồn Python. Cách tốt nhất
là thêm dòng chú thích đặc biệt sau #!
để định nghĩa bảng mã trong tập tin:
# -*- coding: encoding -*-
Với khai báo này, mọi ký tự trong tập tin nguồn sẽ được xem như từ bảng mã encoding, và vì vậy ta có thể viết các chuỗi Unicode trực tiếp trong bảng mã đó.
VD sử dụng bãng mã Windows-1252, Thêm chú thích sau vào đầu file chương trình:
# -*- coding: cp-1252 -*-
and still use all characters in the Windows-1252 character set in the source files. The special encoding comment must be in the first or second line within the file.
Chú thích:
[1] | Trên các HĐH Unix, Thường thì trình thông dịch Python 3.x thường không |
được cài sẵn, mà thay vào đó là cài sẵn python 2.x . Do đó khi gõ python
từ cmd thì sẽ gọi trình thông dịch python 2.x chứ không phải là 3.x. Cẩn thận
nhầm nhé.