Cách ghi dấu trong Python
Sau bài viết trước, chúng ta đã làm quen các câu lệnh cơ bản trong Python. Và ở bài viết này tập trung vào tìm hiểu các toán tử cơ bản trong Python và áp dụng vào làm một bài luyện tập nhỏ. Show
Toán tửTrong python, các toán tử được được cũng cấp trong module Operator (Lib/operator.py) - Là một bộ các hàm chức năng, tương ứng với các toán tử của Python. Ví dụ, operator.add (x, y) tương đương với biểu thức x + y. Bạn có thể bắt gặp các hàm, kiểu như:
Tên của các hàm chức năng này khá đặc biệt với các dấu gạch dưới. Tuy nhiên, có các biến thể không bắt đầu hoặc kết thúc bằng Toán tử là một trong số các thành phần cơ bản nhất trong một ngôn ngữ lập trình. Mỗi toán tử là một ký hiệu đặc biệt như: +, -, * /, %... được map với các hàm (functions) tương ứng trong module operator vừa đề cập ở trên. Giúp cho việc sử dụng dễ dàng, đơn giản và ngắn gọn hơn. Ví dụ: Dưới đây một số ví dụ cho sự mapping giữa các toán tử và các hàm chức năng trong module operator: OperationSyntaxFunctionPhép cộnga + badd(a, b)Nối chuỗiseq1 + seq2concat(seq1, seq2)Kiểm tra chứa chuỗiobj in seqcontains(seq, obj)Chiaa / btruediv(a, b)Chiaa // bfloordiv(a, b)And các bita & band_(a, b)Xora ^ bxor(a, b)Đảo bit~ ainvert(a)Ora l bor_(a, b)Luy thừaa ** bpow(a, b)Nhâna * bmul(a, b)Đảo dấu- aneg(a)Cắt mảngseq[i:j]getitem(seq, slice(i, j))Trừa - bsub(a, b)Nhơ hơna < blt(a, b)Nhỏ hơn hoặc bằnga <= ble(a, b)So sánh bằnga == beq(a, b)So sánh kháca != bne(a, b)So sánh lớn hơn hoặc bằnga >= bge(a, b)So sánh lớn hơna > bgt(a, b)Phân loạiDựa trên chức năng, toán tử trong Python được chia làm 7 nhóm:
Nhóm toán tử số họcGồm các toán tử có chức năng xử lý, thao tác toán học giữa các tập dữ liệu số học. Bao gồm các toán tử cho các phép toán như: cộng (+), trừ (-), nhân (*), chia (/), lũy thừa (**)... OperationSyntaxFunctionPhép cộnga + badd(a, b)Chiaa / btruediv(a, b)Chiaa // bfloordiv(a, b)Luy thừaa ** bpow(a, b)Nhâna * bmul(a, b)Trừa - bsub(a, b)Ví dụ:
Nhóm toán tử logicLà những toán tử thể hiện có mệnh đề AND, OR, NOT. Thường được sử dụng trong các biểu thức logic, có thể đi kèm với các toán tử quan hệ.
Toán tử quan hệLà những toán tử dùng để kiểm tra mối tương quan giữa các toán hạng chính là những phép so sánh như: so sánh bằng, lớn hơn, nhỏ hơn... Một số ký hiệu toán tử quan hệ: Trong bài này tôi sẽ trình bày khái quát cho bạn về cú pháp Python cơ bản. Mục đích của bài này là giúp bạn làm quen dần các khái niệm và thuật ngữ được sử dụng trong Python từ đó bạn có thể rút ra điểm giống và khác nhau với một số ngôn ngữ lập trình khác. Tuyển dụng python các công ty lớn Đặt tên (identifier) trong PythonMột định danh (identifier) trong Python là một tên được sử dụng để nhận diện một biến, một hàm, một lớp, hoặc một đối tượng. Một định danh bắt đầu với một chữ cái từ A tới Z hoặc từ a tới z hoặc một dấu gạch dưới (_) được theo sau bởi 0 hoặc nhiều ký tự, dấu gạch dưới hoặc các chữ số (từ 0 tới 9). 10 sự thật thú vị về ngôn ngữ lập trình Python 20 tài liệu học Python thiết thực để trở thành lập trình viên chuyên nghiệp Python không hỗ trợ các ký tự đặc biệt chẳng hạn như @, $ và % bên trong các định danh. Python là một ngôn ngữ lập trình phân biệt chữ hoa- chữ thường, do đó định danh UCODE và ucode là hai định danh hoàn toàn khác nhau trong lập trình Python. Dưới đây là một số qui tắc nên được sử dụng trong khi đặt tên các định danh: Tên có thể là một dãy ký tự hoặc 1 dãy số bắt đầu bằng ký tự hoặc dấu gạch dưới Khi đặt tên không nên đặt trùng với từ khóa trong Python (phần dưới sẽ trình bày về khác từ khóa này). Tên lớp bắt đầu với một chữ cái hoa. Tất cả tên khác bắt đầu với một chữ cái thường. Một tên được bắt đầu với một dấu gạch dưới đơn chỉ ra rằng tên (định danh) đó là private. Dòng lệnh và độ thụt dòng lệnh trong PythonPython không cung cấp các dấu ngoặc ôm ({}) để chỉ các khối code cho định nghĩa lớp hoặc hàm hoặc điều khiển luồng. Các khối code được nhận biết bởi độ thụt dòng code (indentation) trong lập trình Python và đây là điều bắt buộc. Số khoảng trống trong độ thụt dòng là biến đổi, nhưng tất cả các lệnh bên trong khối phải được thụt cùng một số lượng khoảng trống như nhau. Ví dụ:
Tuy nhiên, khối lệnh sau sẽ tạo ra một lỗi:
Do đó, trong lập trình Python thì tất cả các dòng liên tiếp nhau mà được thụt đầu dòng với cùng lượng khoảng trống như nhau sẽ tạo nên một khối. Trong ví dụ tiếp theo sẽ có các khối lệnh đa dạng: Ghi chú: Bạn không cần cố hiểu vấn đề này ngay lập tức, bạn chỉ cần hiểu các khối code khác nhau ngay cả khi chúng không có các dấu ngoặc ôm. Đây chính là điểm khác nhau giữa Python và ngôn ngữ khác.
Các lệnh trên nhiều dòng trong PythonCác lệnh trong Python có một nét đặc trưng là kết thúc với một newline (dòng mới). Tuy nhiên, Python cho phép sử dụng ký tự \ để chỉ rõ sự liên tục dòng. Ví dụ:
Các lệnh được chứa bên trong các dấu ngoặc [], {}, hoặc () thì không cần sử dụng ký tự /. Ví dụ:
Trích dẫn trong PythonPython chấp nhận trích dẫn đơn (‘), kép (“) và trích dẫn tam (”’ hoặc “””) để biểu thị các hằng chuỗi, miễn là các trích dẫn này có cùng kiểu mở và đóng. Trích dẫn tam được sử dụng để trải rộng chuỗi được trích dẫn qua nhiều dòng. Dưới đây là tất cả các trích dẫn hợp lệ:
Comment trong PythonPython hỗ trợ hai kiểu comment đó là comment đơn dòng và đa dòng. Trong lập trình Python, một dấu #, mà không ở bên trong một hằng chuỗi nào, bắt đầu một comment đơn dòng. Tất cả ký tự ở sau dấu # và kéo dài cho đến hết dòng đó thì được coi là một comment và được bỏ qua bởi trình thông dịch. Ví dụ:
Chương trình trên sẽ cho kết quả:
Bạn cũng có thể gõ một comment trên cùng dòng với một lệnh hoặc biểu thức như sau:
Bạn có thể comment trên nhiều dòng như sau:
Python cũng hỗ trợ kiểu comment thứ hai, đó là kiểu comment đa dòng được cho bên trong các trích dẫn tam, ví dụ: 0Sử dụng dòng trống trong lập trình PythonMột dòng mà chỉ chứa các khoảng trống trắng whitespace, có thể với một comment, thì được xem như là một dòng trống và Python hoàn toàn bỏ qua nó. Trong một phiên thông dịch trong chế độ tương tác, bạn phải nhập một dòng trống để kết thúc một lệnh đa dòng. Các lệnh đa dòng trên một dòng đơn trong PythonDấu chấm phảy “;” cho phép xuất hiện nhiều lệnh trên một dòng đơn. Tất cả các lệnh được cung cấp này không bắt đầu một khối code mới. Dưới đây là ví dụ: 1Các nhóm lệnh đa dòng (còn được gọi là suite) trong lập trình PythonMột nhóm các lệnh đơn, mà tạo một khối code đơn, được gọi là suite trong Python. Các lệnh phức hợp như if, while, def, và class cần một dòng header và một suite. Các dòng header bắt đầu lệnh (với từ khóa) và kết thúc với một dầu hai chấm “:” và được theo sau bởi một hoặc nhiều dòng để tạo nên một suite. Ví dụ như: 2Tham số dòng lệnh trong lập trình PythonNhiều chương trình có thể được chạy để cung cấp cho bạn một số thông tin cơ bản về cách chúng nên được chạy. Python cho bạn khả năng để làm điều này với -h: 3Bạn cũng có thể lập trình cho script của mình theo cái cách mà nó nên chấp nhận các tùy chọn khác nhau tùy theo cách bạn thiết lập. Để tìm hiểu thêm về tham số dòng lệnh, bạn có thể tham khảo bài Tham số dòng lệnh trong Python. (uCode đề nghị bạn nên tìm hiểu chương này sau khi bạn đã tìm hiểu qua về các khái niệm còn lại của Python.) Ngoài ra, một điều cần nói đến đó là khi bạn gặp phải trường hợp chương trình hiển thị dòng nhắc sau: 4Lệnh này nói rằng bạn hãy nhấn phím Enter để thoát. Ở đây, “\n\n” là để tạo hai newline (dòng mới) trước khi hiển thị dòng thực sự. Khi người dùng nhấn phím enter, thì chương trình kết thúc. Lệnh này sẽ đợi cho đến khi nào bạn thực hiện một hành động nào đó, và điều này giữ cho cửa sổ console của bạn mở tới khi bạn tiếp tục thực hiện hành động. |