A] chúng được sử dụng để chỉ ra các biến riêng của một lớp B] chúng gây nhầm lẫn cho trình thông dịchC] chúng được sử dụng để chỉ ra các biến toàn cụcD] chúng làm chậm quá trình thực thi
Đáp án & Giải thíchCâu trả lời
A] chúng được sử dụng để chỉ ra một biến riêng tư của một lớp
Giải trình
Vì Python không có khái niệm về các biến riêng tư, nên các dấu gạch dưới ở đầu được sử dụng để chỉ ra các biến không được truy cập từ bên ngoài lớp
Cái nào trong số này là phân chia tầng?
A] /B] //C] %D] Không cái nào được đề cập
Đáp án & Giải thíchCâu trả lời
b] //
Giải trình
Khi cả hai toán hạng đều là số nguyên thì python sẽ cắt phần phân số và cung cấp cho bạn giá trị làm tròn, để có câu trả lời chính xác, hãy sử dụng phép chia sàn
Đây là phân tầng. Ví dụ, 5/2 = 2. 5 nhưng cả hai toán hạng đều là số nguyên nên câu trả lời của biểu thức này trong python là 2. Để có được 2. 5 câu trả lời, sử dụng phân chia tầng
Cái nào sau đây có độ ưu tiên cao nhất trong biểu thức?
A] Hàm số mũB] Phép cộngC] Phép nhânD] Dấu ngoặc đơn
Đáp án & Giải thíchCâu trả lời
D] Dấu ngoặc đơn
Giải trình
chỉ cần nhớ. PEMDAS, nghĩa là Dấu ngoặc đơn, Luỹ thừa, Chia, Nhân, Cộng, Trừ. Lưu ý rằng thứ tự ưu tiên của phép chia và phép nhân là như nhau
Tương tự, thứ tự của phép cộng và phép trừ cũng vậy
Kết quả của round[0. 5] – vòng[-0. 5] ?
A] 1. 0B] 2. 0C] 0. 0D] Giá trị phụ thuộc vào phiên bản Python
Câu trả lời
D] Giá trị phụ thuộc vào phiên bản Python
Giải trình
Hành vi của hàm round[] khác nhau trong Python 2 và Python 3. Trong Python 2, nó làm tròn các số cách xa 0 khi số được làm tròn chính xác là một nửa
vòng[0. 5] là 1 và làm tròn [-0. 5] là -1 trong khi ở Python 3, nó làm tròn các số về số chẵn gần nhất khi số được làm tròn chính xác ở giữa chừng
Xem đầu ra bên dưới. Đây là đầu ra thời gian chạy cho Python phiên bản 2. 7 thông dịch viên
$trăn
Trăn 2. 7. 17 [mặc định, ngày 7 tháng 11 năm 2019, 10. 07. 09]
>>> vòng[0. 5]
1. 0
>>> vòng[-0. 5]
-1. 0
>>>
Ở kết quả trên, bạn có thể thấy rằng các hàm round[] trên 0. 5 và -0. 5 đang tiến về 0 và do đó “làm tròn[0. 5] – [vòng[-0. 5]] = 0 – 0 = 0“. Cũng lưu ý rằng round[2. 5] là 2 [là số chẵn] trong khi round[3. 5] là 4 [là số chẵn]
Mã định danh Python là tên do người dùng xác định. Chúng được sử dụng để chỉ định tên của các biến, hàm, lớp, mô-đun, v.v.
Quy tắc để tạo mã định danh Python
Có một số quy tắc phải được tuân theo để tạo mã định danh python
- Bạn không thể sử dụng các từ khóa dành riêng làm tên định danh. Nếu bạn thử, nó sẽ ném SyntaxError
- Mã định danh Python có thể chứa các chữ cái viết hoa thường [a-z], chữ hoa [A-Z], chữ số [0-9] và dấu gạch dưới [_]
- Tên định danh không thể bắt đầu bằng một chữ số. Ví dụ: 10test sẽ là một mã định danh không hợp lệ
- Định danh Python không thể chỉ chứa các chữ số. Ví dụ: 888 sẽ là mã định danh không hợp lệ
- Tên định danh Python có thể bắt đầu bằng dấu gạch dưới. Vì vậy, _test sẽ là một định danh hợp lệ
- Không giới hạn độ dài của tên định danh. Tuy nhiên, đừng cố giữ một số nhận dạng siêu dài, điều đó sẽ chỉ làm tổn hại đến uy tín của bạn với tư cách là một lập trình viên
- Tên định danh Python phân biệt chữ hoa chữ thường. Vì vậy, “abc” và “ABC” là hai định danh khác nhau. Tốt nhất là sử dụng các trường hợp nhỏ cho số nhận dạng để có tính đồng nhất trong các chương trình của bạn
Ví dụ về mã định danh hợp lệ của Python
Hãy xem xét một số ví dụ về số nhận dạng hợp lệ trong Python
- ab10c. chỉ chứa các chữ cái và số
- abc_DE. chứa tất cả các ký tự hợp lệ
- _. đáng ngạc nhiên nhưng Có, gạch dưới là một định danh hợp lệ
- _abc. định danh có thể bắt đầu bằng dấu gạch dưới
Ví dụ về mã định danh không hợp lệ của Python
- 99. số nhận dạng không thể chỉ là chữ số
- 9abc. định danh không thể bắt đầu bằng số
- x+y. ký tự đặc biệt duy nhất được phép là dấu gạch dưới
- vì. đó là một từ khóa dành riêng
Làm cách nào để kiểm tra xem Chuỗi có phải là Mã định danh hợp lệ không?
Chúng ta có thể sử dụng hàm chuỗi isidentifier[]
để kiểm tra xem tên định danh có hợp lệ hay không. Tuy nhiên, phương pháp này không tính đến các từ khóa dành riêng. Vì vậy, chúng ta có thể sử dụng chức năng này với keyword.iskeyword[]
để kiểm tra xem tên có hợp lệ hay không
print["abc".isidentifier[]] # True print["99a".isidentifier[]] # False print["_".isidentifier[]] # True print["for".isidentifier[]] # True - wrong output
Chúng tôi biết rằng “for” là một từ khóa dành riêng. Vì vậy, nó không phải là một định danh hợp lệ. Hãy định nghĩa một hàm để kiểm tra xem tên định danh có hợp lệ hay không
def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
Phương pháp đặt tên định danh Python tốt nhất
- Tên lớp nên bắt đầu bằng chữ in hoa. Ví dụ:
Person
,Employee
, v.v. - Nếu tên lớp có nhiều từ, hãy sử dụng Chữ hoa cho ký tự đầu tiên của mỗi từ. Ví dụ:
def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
0,def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
1, v.v. - Bạn nên sử dụng các chữ cái nhỏ cho các biến, hàm và tên mô-đun. Ví dụ:
def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
2,def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
3, v.v. - Nếu các biến, hàm và tên mô-đun có nhiều từ thì hãy tách chúng bằng dấu gạch dưới. Ví dụ:
def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
0,def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
1, v.v. - Đối với các biến riêng tư, bạn có thể bắt đầu tên của chúng bằng dấu gạch dưới
- Tránh gạch dưới là ký tự đầu tiên và cuối cùng trong tên định danh. Nó được sử dụng bởi các loại tích hợp python
- Nếu mã định danh bắt đầu và kết thúc bằng hai dấu gạch dưới, thì điều đó có nghĩa là mã định danh là một tên đặc biệt do ngôn ngữ xác định, chẳng hạn như __init__. Vì vậy, bạn nên tránh có hai dấu gạch dưới ở đầu và cuối tên định danh
- Giữ tên định danh có ý nghĩa để làm rõ ý định của họ. Ví dụ: phone_number, is_uppercase, v.v.
- Nếu một hàm trả về một giá trị boolean, thì tốt hơn là bắt đầu tên của nó bằng “is”. Ví dụ:
def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
2,def is_valid_identifier[s]: return s.isidentifier[] and not keyword.iskeyword[s] print[is_valid_identifier["for"]] # False
3, v.v. - Không giới hạn độ dài của tên định danh. Nhưng, giữ cho nó nhỏ và đến điểm. Ví dụ: the_employee_object_first_name có thể được đặt tên tốt hơn là emp_first_name
Tóm lược
Định danh trong Python là tên do người dùng định nghĩa. Chúng được sử dụng để xác định các thực thể trong chương trình python. Chúng ta nên sử dụng tên riêng để gợi ý việc sử dụng định danh. Thực hiện theo quy tắc để "giữ cho nó đơn giản và có ý nghĩa"