Để biểu diện khác nhau trong Python ta sử dụng

Lưu ý: Trong loạt bài viết này, mình sẽ giới thiệu về Python 3. Nếu bạn muốn tìm hiểu Python 2, sẽ có một số khái niệm không chính xác, bạn cần tham khảo thêm ở các nguồn khác cho phiên bản Python 2.

Dữ liệu kiểu số

Số nguyên

Tương tự các ngôn ngữ lập trình khác, Python cũng xây dựng sẵn kiểu dữ liệu số nguyên (integer). Điểm nhỉnh hơn của Python là một số nguyên không bị giới hạn. Nghĩa là bạn sẽ không phải nghe nhắc đến Int32, Int64…vv ở đây.

Để biểu diện khác nhau trong Python ta sử dụng

Tuy nhiên, bất kỳ biến nào cũng sẽ phải lưu trên bộ nhớ. Do đó, giá trị số nguyên cũng bị giới hạn bởi các cấu hình của hệ điều hành cũng như sức mạnh phần cứng máy của bạn.

Số nguyên trong Python sẽ được thể hiện ở 4 định dạng

  • Thập phân (Decimal)
  • Nhị phân (binary) được bắt đầu bởi số 0 và kí tự b (hoặc B)
  • Bát phân (Octal) được bắt đầu bởi số 0 và kí tự o (hoặc O)
  • Thập lục phân (Hexadecimal) được bắt đầu bởi số 0 và kí tự x (hoặc X)

Để biểu diện khác nhau trong Python ta sử dụng

Số thực

Kiểu dữ liệu float trong Python được thiết kế để lưu trữ các số thực. Trên tinh thần đơn giản của ngôn ngữ Python, kiểu số thực cũng được biểu diễn bằng các cách cũng rất đơn giản.

Để biểu diện khác nhau trong Python ta sử dụng

Python trên phần lớn các hệ thống đều hiện thực kiểu float theo chuẩn “double-precision” nghĩa là sử dụng 64bit để biểu diễn một số thực. Theo tài liệu IEEE_754 thì số thực trong Python có giá trị tối đa khoảng 1.8 * 10^308, nếu vượt ngưỡng này, Python sẽ hiển thị giá trị vô cực (inf). Giá trị gần với số 0 là 5.0 * 10^-324, vượt ngưỡng này Python sẽ trả về giá trị 0.0

Để biểu diện khác nhau trong Python ta sử dụng

Nếu muốn đào sâu hơn về kiểu số thực, bạn có thểm đọc thêm về Floating Point Arithmetic

Số phức

Ngoài số nguyên và số thực, Python cũng hỗ trợ một kiểu dữ liệu vô cùng quan trọng trong lĩnh vực khoa học, đó là số phức (complex number). Bạn có thể dễ dàng khai báo một số phức bằng cú pháp  +<đơn vị ảo>j

Để biểu diện khác nhau trong Python ta sử dụng

Dữ liệu kiểu chuỗi

Chuỗi (string) là một chuỗi các ký tự. Python thiết kế kiểu dữ liệu str để lữu trữ dữ liệu chuỗi. Ở Python 3, Unicode được hỗ trợ mặc định với kiểu dữ liệu chuỗi.

Một chuỗi sẽ được khai báo bằng 3 cách, trong nháy đơn (‘nội dung’), trong nháy kép (“nội dung”) hoặc trong 3 dấu nháy kép (“””nội dung”””). Việc khai báo không ảnh hưởng gì đến dữ liệu bên trong, khác biệt duy nhất đến từ 3 dấu nháy, nội dung bên trong 3 dấu nháy sẽ được giữ nguyên định dạng (xuống dòng, khoảng trắng và tab…)

Để biểu diện khác nhau trong Python ta sử dụng

Boolean

Python 3 cung cấp sẵn kiểu dữ liệu Boolean. Một đối tượng (object) boolean sẽ nhận 1 trong 2 giá trị True hoặc False

Để biểu diện khác nhau trong Python ta sử dụng

Một đối tượng bool có giá trị True sẽ được xem là “truthy”. Ngược lại khi nó nhận giá trị False sẽ được xem là “falsy”. Nghĩa là giá trị của một đối tượng bool không bao giờ bị ảnh hưởng bởi ngữ cảnh.

Ngược lại, các đối tượng khác (không phải boolean) sẽ được đánh giá tính đúng/sai (True/False) tùy thuộc vào ngữ cảnh của nó. Xét ví dụ bên dưới

Để biểu diện khác nhau trong Python ta sử dụng

Chúng ta có lần lượt biến thuộc kiểu số nguyên (integer) với giá trị được gán lần lượt là số dương, số âm và số không. Tùy thuộc vào giá trị của số nguyên, trình thông dịch sẽ hiểu chúng theo những cách khác khau, số dương và số âm sẽ được xem là True và số âm sẽ được xem là False.

Do đó, khi sử dụng một đối tượng non-boolean trong các cấu trúc điều khiển, chúng ta cần thật sự hiểu rõ về hành vi của trình thông dịch sẽ xử lý đối tượng đó như thế nào.

Có thể bạn quan tâm

Bài viết được sự cho phép của tác giả Nguyễn Chí Thức

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

Mộ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
Không được phép sử dụng ký tự đặc biệt để đặt tên (ngoại trừ dấu gạch dưới). Ký tự đầu tiên có thể là chữ cái, dấu gạch dưới, nhưng không được sử dụng chữ số làm ký tự đầu tiên.

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. Bắt đầu một định danh với hai dấu gạch dưới chỉ rằng định danh đó thực sự là private.

Nếu định danh cũng kết thúc với hai dấu gạch dưới, thì định danh này là một tên đặc biệt được định nghĩa bởi ngôn ngữ (ví dụ như init chẳng hạn).


Các từ khóa trong Python
Bảng dưới liệt kê các từ khóa trong ngôn ngữ lập trình Python. Đây là các từ dành riêng và bạn không thể sử dụng chúng như là các hằng, biến hoặc cho bất kỳ tên định danh nào. Tất cả từ khóa trong lập trình Python là chỉ ở dạng chữ thường.

Để biểu diện khác nhau trong Python ta sử dụng

Python 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ụ:

if True: print "True" else: print "False"

Tuy nhiên, khối lệnh sau sẽ tạo ra một lỗi:

if True: print "Answer" print "True" else: print "Answer" print "False"

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.

import sys try: file = open(file_name, "w") except IOError: print "There was an error writting to", file_name sys.edit() print "Enter '", file_finish, print "' When finished" while file_text != file_finish: file_text = raw_input("Enter text: ") if file_text == file_finish: file.close break file.write(file_text) file.write("\n") file.close() file_name = raw_input ("Enter filename: ") if len(file_name) == 0: print "Next time please enter something" sys.exit() try: file = open(file_name, "r") except IOError: print "There was an error reading file" sys.exit() file_text = file.read() file.close() print file_text

Cá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ụ:

total = item_one + \ item_two + \ item_there

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ụ:

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

Python 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ệ:

word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences."""

Python 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ụ:

print "Hello, Python!"

Chương trình trên sẽ cho kết quả:

Hello, Python!

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:

name = "Madissetti"

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ụ:

print "Hello Python" """This is multiline comment"""

Mộ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.

Dấ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ụ:

import sys; x= 'foo'; sys.stdout.write(x + '\n')

Mộ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ư:

if expression : suite elif expression : suite else : suite

Nhiề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:

$ python -h usage: pythn [opption] ... [-c cmd | -m mod | file | -] [arg] ... Options and arguments (and corresponding environment variables): -c cmd : program passed in as string (terminates option list) -d : debug output from parser (also PYTHONDEBUG=x) -E : ignore environment variables (such as PYTHONPATH) -h : print this help message and exit [ etc. ]

Bạ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:

raw_input("\n\nPress the enter key to exit.")

Lệ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.

Bài viết gốc được đăng tải tại ucode.vn

Có thể bạn quan tâm:

Xem thêm Việc làm it không cần kinh nghiệm hấp dẫn trên TopDev