Giới thiệu về lập trình bằng Python. Ngôn ngữ lập trình Python. Đào tạo từ đầu: tính năng, quy tắc và khuyến nghị

Chúng tôi xin giới thiệu với bạn một khóa học mới của nhóm Codeby- "Thử nghiệm thâm nhập các ứng dụng Web từ đầu." Lý thuyết chung, chuẩn bị môi trường làm việc, làm mờ và lấy dấu vân tay thụ động, làm mờ chủ động, Lỗ hổng, Hậu khai thác, Công cụ, Kỹ thuật xã hội và nhiều hơn thế nữa.


Ngôn ngữ lập trình Python từ lâu đã chiếm vị trí hàng đầu trong số tất cả các ngôn ngữ lập trình. Về số lượng lĩnh vực ứng dụng và khả năng, nó cạnh tranh với các ngôn ngữ như C++ và JavaScript. Tất nhiên, Python mới hơn nhiều so với các ngôn ngữ lập trình cổ điển, nhưng nó lý tưởng cho người mới bắt đầu và hơn thế nữa. Python được sử dụng trong các công ty lớn như Pixar, NASA.

Trước hết: Ngôn ngữ lập trình này có kiểu gõ động, có nghĩa là không cần phải khai báo loại biến, chuyển kiểu này sang kiểu khác và suy nghĩ về bất kỳ hạn chế nào đối với số lượng ký tự có trong các biến này. Kiểu gõ động giúp mọi việc trở nên dễ dàng hơn đối với người mới bắt đầu vì họ không cần phải tìm hiểu sâu về RAM và CPU để hiểu cách hoạt động của ngôn ngữ. Tất nhiên, có những quy tắc giải thích một số nguyên tắc truyền kiểu dữ liệu này sang kiểu dữ liệu khác. Tất nhiên, đây là những điều đáng chú ý khi học Python: bằng cách này, bạn có thể tránh được các lỗi logic mà trình biên dịch không nhận ra.

Ví dụ gõ động:

Thứ hai: Ngôn ngữ này có khả năng lập trình hướng đối tượng mạnh mẽ. Điều này có nghĩa là cấu trúc logic của một chương trình Python có thể được xây dựng theo cách sao cho mã của nó vừa với một số dòng tương đối nhỏ. Thật vậy, các chương trình được viết bằng Python chiếm số dòng ít hơn từ một đến rưỡi đến hai lần so với các chương trình tương tự được viết bằng C++.

Python là một ngôn ngữ có mục đích chung. Điều này có nghĩa là nó có thể được sử dụng trong mọi lĩnh vực phát triển phần mềm. Thật vậy, mọi thứ đều có thể được phát triển bằng Python: các hệ thống toán học phức tạp sử dụng mô-đun NumPy (một giải pháp thay thế cho MatLab), ứng dụng web sử dụng Django, giao diện đồ họa sử dụng Tkinter, trò chơi sử dụng PyGame, v.v.

Nhược điểm duy nhất của ngôn ngữ này là tốc độ thấp so với các ngôn ngữ cổ điển (C++, Java). Mặt khác, sức mạnh tính toán của máy tính hiện đại khiến cho sự khác biệt này trở nên vô hình. Tuy nhiên, ở đây, các nhà phát triển Python đã tìm ra một giải pháp tài tình. Thời gian chạy CPython biên dịch mã mà không cần giai đoạn mã máy trung gian, giúp chương trình chạy nhanh hơn. Do đó, các mô-đun chương trình yêu cầu tốc độ rất quan trọng có thể được phát triển bằng CPython.

Từ tất cả những điều trên, có thể thấy rằng Python rất đáng để học hỏi. Nếu bạn là người mới bắt đầu lập trình, hãy thoải mái chọn Python làm ngôn ngữ đầu tiên. Điều này sẽ giúp bạn học nghệ thuật lập trình dễ dàng hơn và mang đến cho bạn cơ hội phát triển trong tương lai. Để cài đặt Python trên Linux, bạn có thể đọc

Ngày 27 tháng 8 năm 2012 lúc 03:18 chiều

Học Python hiệu quả

  • Python

Xin chào tất cả mọi người!

Cú pháp dễ đọc, dễ học, ngôn ngữ cấp cao, ngôn ngữ lập trình hướng đối tượng (OOP), chế độ tương tác mạnh mẽ, nhiều thư viện. Nhiều lợi ích khác... Và tất cả điều này chỉ bằng một ngôn ngữ.
Đầu tiên, chúng ta hãy đi sâu vào các khả năng và tìm hiểu xem Python có thể làm được những gì?

Tại sao tôi cần Python của bạn?

Nhiều lập trình viên mới hỏi những câu hỏi tương tự. Giống như mua một chiếc điện thoại, hãy cho tôi biết tại sao tôi nên mua chiếc điện thoại này mà không phải chiếc điện thoại này?
Chất lượng phần mềm
Đối với nhiều người, bao gồm cả tôi, ưu điểm chính là cú pháp dễ đọc. Không có nhiều ngôn ngữ có thể tự hào về nó. Mã Python dễ đọc hơn, điều đó có nghĩa là việc sử dụng lại và duy trì nó dễ dàng hơn nhiều so với việc sử dụng mã bằng các ngôn ngữ kịch bản lệnh khác. Python chứa các cơ chế hiện đại nhất để sử dụng lại mã chương trình, đó là OOP.
Thư viện hỗ trợ
Python đi kèm với một số lượng lớn chức năng được biên dịch và di động được gọi là thư viện chuẩn. Thư viện này cung cấp cho bạn rất nhiều tính năng được yêu cầu trong các chương trình ứng dụng, từ tìm kiếm văn bản theo mẫu đến các chức năng mạng. Python có thể được mở rộng bởi cả thư viện của riêng bạn và thư viện do các nhà phát triển khác tạo ra.
Tính di động của chương trình
Hầu hết các chương trình Python chạy không thay đổi trên tất cả các nền tảng chính. Việc chuyển mã chương trình từ Linux sang Windows chỉ đơn giản là sao chép các tệp chương trình từ máy này sang máy khác. Python cũng mang đến cho bạn rất nhiều cơ hội để tạo giao diện đồ họa di động.
Tốc độ phát triển
So với các ngôn ngữ được biên dịch hoặc gõ mạnh như C, C++ hoặc Java, Python tăng năng suất của nhà phát triển lên nhiều lần. Mã Python thường có kích thước bằng 1/3 hoặc thậm chí 1/5 kích thước của mã C++ hoặc Java tương đương, nghĩa là gõ ít hơn, thời gian gỡ lỗi ít hơn và tốn ít công sức bảo trì hơn. Ngoài ra, các chương trình Python chạy ngay lập tức mà không cần thực hiện các bước biên dịch và liên kết tốn thời gian như một số ngôn ngữ lập trình khác, giúp tăng thêm năng suất của lập trình viên.

Python được sử dụng ở đâu?

  • Google sử dụng Python trong công cụ tìm kiếm của mình và trả tiền cho người tạo ra Python, Guido van Rossum.
  • Các công ty như Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm và IBM sử dụng Python để kiểm tra phần cứng
  • Dịch vụ chia sẻ video của YouTube phần lớn được triển khai bằng Python
  • NSA sử dụng Python để mã hóa và phân tích thông tin tình báo
  • JPMorgan Chase, UBS, Getco và Citadel sử dụng Python để dự báo thị trường tài chính
  • Chương trình BitTorrent phổ biến để trao đổi tệp trên mạng ngang hàng được viết bằng Python
  • Khung web App Engine phổ biến của Google sử dụng Python làm ngôn ngữ lập trình ứng dụng
  • NASA, Los Alamos, JPL và Fermilab sử dụng Python cho tính toán khoa học.
và các công ty khác cũng sử dụng ngôn ngữ này.

Văn học

Vì vậy, chúng tôi đã hiểu rõ hơn về ngôn ngữ lập trình Python. Có thể nói riêng rằng ưu điểm của Python là nó có nhiều tài liệu chất lượng cao. Không phải mọi ngôn ngữ đều có thể tự hào về điều này. Ví dụ, ngôn ngữ lập trình JavaScript không thể làm hài lòng người dùng với nhiều tài liệu, mặc dù ngôn ngữ này thực sự tốt.

Dưới đây là những nguồn sẽ giúp bạn hiểu rõ hơn về Python và có thể trở thành Guido van Rossum trong tương lai.
* Một số nguồn có thể bằng tiếng Anh. Điều này không có gì đáng ngạc nhiên, hiện nay có rất nhiều tác phẩm văn học xuất sắc được viết bằng tiếng Anh. Và để tự lập trình bạn cần biết ít nhất kiến ​​thức cơ bản về tiếng Anh.

Tôi thực sự khuyên bạn nên đọc cuốn sách này trước - Mark Lutz. Học Python, tái bản lần thứ 4. Sách đã được dịch sang tiếng Nga nên đừng lo nếu bạn đột nhiên không biết tiếng Anh. Nhưng đây là phiên bản thứ tư.

Đối với những người biết tiếng Anh, bạn có thể đọc tài liệu trên trang web chính thức của Python. Mọi thứ đều được mô tả ở đó khá rõ ràng.

Và nếu bạn thích thông tin từ video thì tôi có thể giới thiệu các bài học từ Google, do Nick Parlante, một sinh viên đến từ Stanford, giảng dạy. Sáu video bài giảng trên YouTube. Nhưng có một giọt thuốc mỡ trong thùng thuốc mỡ... Anh ấy thực hiện nó bằng tiếng Anh với phụ đề tiếng Anh. Nhưng tôi hy vọng rằng điều này sẽ dừng lại một số.

Đọc sách nhưng không biết vận dụng kiến ​​thức thì phải làm sao?

Không hoảng loạn!
Tôi khuyên bạn nên đọc cuốn sách của Mark Lutz. Lập trình Python (Ấn bản thứ 4). Trước đây là “học”, nhưng ở đây là “Lập trình”. Trong phần “Học” - bạn có được kiến ​​thức về Python, trong phần “Lập trình” - Mark dạy bạn cách áp dụng nó vào các chương trình tương lai của bạn. Cuốn sách rất hữu ích. Và tôi nghĩ một cái là đủ cho bạn.

Tôi muốn luyện tập!

Một cách dễ dàng.
Ở trên tôi đã viết về các video bài giảng của Nick Parlante trên YouTube, nhưng họ cũng có một số video

(Dịch)

Một bài báo đã được xuất bản trên trang web Poromenos Stuff, trong đó, ở dạng ngắn gọn, họ nói về những điều cơ bản của ngôn ngữ Python. Tôi cung cấp cho bạn bản dịch của bài viết này. Bản dịch không phải theo nghĩa đen. Tôi đã cố gắng giải thích chi tiết hơn một số những điểm có thể không rõ ràng.

Nếu bạn đang có ý định học ngôn ngữ Python nhưng chưa tìm được hướng dẫn phù hợp thì bài viết này sẽ rất hữu ích với bạn! Trong một thời gian ngắn, bạn sẽ có thể làm quen với những điều cơ bản của ngôn ngữ Python. Mặc dù bài viết này thường dựa vào việc bạn đã có kinh nghiệm lập trình nhưng tôi hy vọng ngay cả những người mới bắt đầu cũng sẽ thấy tài liệu này hữu ích. Đọc từng đoạn một cách cẩn thận. Do tài liệu cô đọng nên một số chủ đề được thảo luận một cách hời hợt nhưng lại chứa đựng đầy đủ tài liệu cần thiết.

Các tính chất cơ bản

Python không yêu cầu khai báo rõ ràng các biến và là ngôn ngữ hướng đối tượng phân biệt chữ hoa chữ thường (biến var không tương đương với Var hoặc VAR - chúng là ba biến khác nhau).

Cú pháp

Đầu tiên, cần lưu ý một tính năng thú vị của Python. Thay vào đó, nó không chứa dấu ngoặc toán tử (bắt đầu..kết thúc trong pascal hoặc (..) trong C). các khối được thụt vào: dấu cách hoặc tab và việc nhập khối câu lệnh được thực hiện bằng dấu hai chấm. Nhận xét một dòng bắt đầu bằng dấu thăng "#", nhận xét nhiều dòng bắt đầu và kết thúc bằng ba dấu ngoặc kép """".

Để gán giá trị cho một biến, dấu “=” được sử dụng và để so sánh, “==” được sử dụng. Để tăng giá trị của một biến hoặc thêm vào một chuỗi, hãy sử dụng toán tử “+=” và “-=” để giảm giá trị đó. Tất cả các thao tác này có thể tương tác với hầu hết các loại, bao gồm cả chuỗi. Ví dụ

>>> myvar = 3

>>> myvar += 2

>>> myvar -= 1

"""Đây là bình luận nhiều dòng

Các chuỗi nằm trong ba dấu ngoặc kép sẽ bị bỏ qua"""

>>> mystring = "Xin chào"

>>> mystring += "thế giới."

>>> in chuỗi bí ẩn

Chào thế giới.

# Dòng tiếp theo thay đổi

Giá trị của các biến được hoán đổi. (Chỉ một dòng thôi!)

>>> myvar, mystring = mystring, myvar

Cấu trúc dữ liệu

Python chứa các cấu trúc dữ liệu như danh sách, bộ dữ liệu và từ điển). Danh sách tương tự như mảng một chiều (nhưng bạn có thể sử dụng Danh sách chứa danh sách - mảng nhiều chiều), bộ dữ liệu là danh sách bất biến, từ điển cũng là danh sách, nhưng chỉ mục có thể thuộc bất kỳ loại nào, không chỉ là số. "Mảng" trong Python có thể chứa dữ liệu thuộc bất kỳ loại nào, nghĩa là một mảng có thể chứa các loại dữ liệu số, chuỗi và các loại dữ liệu khác. Mảng bắt đầu ở chỉ mục 0 và phần tử cuối cùng có thể được truy cập ở chỉ mục -1. Bạn có thể gán hàm cho các biến và sử dụng chúng cho phù hợp.

>>> sample = , ("a", "tuple")] #Danh sách bao gồm một số nguyên, một danh sách khác và một bộ dữ liệu

>>> mylist = ["List item 1", 2, 3.14] #Danh sách này chứa một chuỗi, một số nguyên và một phân số

>>> mylist = "Liệt kê lại mục 1" #Thay đổi phần tử đầu tiên (không) của trang tính mylist

>>> mylist[-1] = 3.14 #Thay đổi phần tử cuối cùng của trang tính

>>> mydict = ("Key 1": "Value 1", 2: 3, "pi": 3.14) #Tạo từ điển có chỉ số số và số nguyên

>>> mydict["pi"] = 3.15 #Thay đổi thành phần từ điển trong chỉ mục "pi".

>>> mytuple = (1, 2, 3) #Chỉ định một bộ

>>> myfunction = len #Python cho phép khai báo từ đồng nghĩa hàm theo cách này

>>> in chức năng của tôi (danh sách của tôi)

Bạn có thể sử dụng một phần của mảng bằng cách chỉ định chỉ mục đầu tiên và cuối cùng được phân tách bằng dấu hai chấm ://. Trong trường hợp này, bạn sẽ nhận được một phần của mảng, từ chỉ mục đầu tiên đến chỉ mục thứ hai, không bao gồm. Nếu phần tử đầu tiên không được chỉ định thì việc đếm bắt đầu từ đầu mảng và nếu phần tử cuối cùng không được chỉ định thì mảng sẽ được đọc đến phần tử cuối cùng. Giá trị âm xác định vị trí của phần tử từ cuối. Ví dụ:

>>> mylist = ["Danh sách mục 1", 2, 3.14]

>>> print mylist[:] #Tất cả các phần tử mảng đều được đọc

["Danh sách mục 1", 2, 3.1400000000000001]

>>> print mylist #Phần tử thứ 0 và đầu tiên của mảng được đọc.

["Danh sách mục 1", 2]

>>> print mylist[-3:-1] #Các phần tử từ 0 (-3) đến giây (-1) đều được đọc (không bao gồm)

["Danh sách mục 1", 2]

>>> print mylist #Elements được đọc từ đầu đến cuối

Dây

Chuỗi trong Python được phân tách bằng dấu ngoặc kép """ hoặc dấu ngoặc đơn """. Dấu ngoặc kép có thể chứa dấu ngoặc đơn hoặc ngược lại. Ví dụ: dòng “Anh ấy đã nói xin chào!” sẽ được hiển thị là "Anh ấy đã nói xin chào!". Nếu bạn cần sử dụng một chuỗi gồm nhiều dòng thì dòng này phải bắt đầu và kết thúc bằng ba dấu ngoặc kép """". Bạn có thể thay thế các phần tử từ một bộ hoặc từ điển vào mẫu chuỗi. Dấu phần trăm "%" giữa chuỗi và bộ dữ liệu thay thế các ký tự trong chuỗi "%s" thành một phần tử bộ dữ liệu. Từ điển cho phép bạn chèn một phần tử tại một chỉ mục nhất định vào một chuỗi. Để thực hiện việc này, hãy sử dụng cấu trúc "%(index)s" trong chuỗi. Trong trường hợp này, thay vì "%(index)s", giá trị từ điển tại chỉ mục đã cho sẽ được thay thế bằng chỉ mục.

>>>in "Tên: %s\nSố: %s\nChuỗi: %s" % (myclass.name, 3, 3 * "-")

Tên: Poromenos

Số 3

Sợi dây: ---

strString = """Văn bản này nằm ở

trên nhiều dòng"""

>>> print "%(động từ)s này là %(danh từ)s." %("danh từ": "kiểm tra", "động từ": "là")

Đây là một bài kiểm tra.

Toán tử

Các câu lệnh while, if và for cấu thành các toán tử di chuyển. Không có câu lệnh nào tương đương với câu lệnh chọn, vì vậy bạn sẽ phải thực hiện với if . Câu lệnh for tạo ra sự so sánh biến và danh sách. Để có được danh sách các chữ số lên đến một số - sử dụng phạm vi (hàm ). Đây là một ví dụ về việc sử dụng toán tử

rangelist = range(10) #Lấy danh sách mười chữ số (từ 0 đến 9)

>>> in danh sách phạm vi

đối với số trong danh sách phạm vi: #Miễn là biến số (được tăng thêm một lần mỗi lần) có trong danh sách...

# Kiểm tra xem biến có được đưa vào không

# số thành một bộ số (3, 4, 7, 9)

Nếu số trong (3, 4, 7, 9): #Nếu số nằm trong bộ (3, 4, 7, 9)...

# Thao tác "break" cung cấp

# thoát khỏi vòng lặp bất cứ lúc nào

Phá vỡ

Khác:

# "tiếp tục" thực hiện "cuộn"

# vòng. Điều này không bắt buộc ở đây, vì sau thao tác này

# trong mọi trường hợp, chương trình sẽ quay lại xử lý vòng lặp

Tiếp tục

khác:

# "khác" là tùy chọn. Điều kiện được đáp ứng

# nếu vòng lặp không bị gián đoạn bởi lệnh "break".

Đạt # Không làm gì cả

nếu danh sách phạm vi == 2:

In "Mục thứ hai (danh sách dựa trên 0) là 2"

nhà phân tích Elif == 3:

In "Mục thứ hai (danh sách dựa trên 0) là 3"

khác:

In "Không biết"

trong khi danh sách phạm vi == 1:

Vượt qua

Chức năng

Để khai báo một hàm, sử dụng từ khóa "def". Các đối số của hàm được đặt trong dấu ngoặc đơn sau tên hàm. Bạn có thể chỉ định các đối số tùy chọn, đặt cho chúng một giá trị mặc định. Các hàm có thể trả về các bộ dữ liệu, trong trường hợp đó bạn cần viết các giá trị trả về được phân tách bằng dấu phẩy. Từ khóa "lambda" được sử dụng để khai báo các hàm cơ bản.

# arg2 và arg3 là các đối số tùy chọn, lấy giá trị được khai báo theo mặc định,

# trừ khi bạn cung cấp cho chúng một giá trị khác khi gọi hàm.

def myfunction(arg1, arg2 = 100, arg3 = "test"):

Trả về arg3, arg2, arg1

#Hàm được gọi với giá trị của đối số đầu tiên - "Đối số 1", đối số thứ hai - theo mặc định và đối số thứ ba - "Đối số được đặt tên".

>>>ret1, ret2, ret3 = myfunction("Đối số 1", arg3 = "Đối số được đặt tên")

# ret1, ret2 và ret3 lần lượt lấy các giá trị "Đối số được đặt tên", 100, "Đối số 1"

>>> in ret1, ret2, ret3

Đối số được đặt tên 100 Đối số 1

# Giá trị sau tương đương với def f(x): return x + 1

hàmvar = lambda x: x + 1

>>> hàm in(1)

Các lớp học

Ngôn ngữ Python bị giới hạn ở tính đa kế thừa trong các lớp. Các biến nội bộ và các phương thức lớp nội bộ bắt đầu bằng hai dấu gạch dưới "__" (ví dụ "__myprivatevar"). Chúng ta cũng có thể gán giá trị cho biến lớp từ bên ngoài. Ví dụ:

lớp Myclass:

Chung = 10

định nghĩa __init__(tự):

Tự.myvariable = 3

Defmyfunction(self, arg1, arg2):

Trả về self.myvariable

# Ở đây chúng ta đã khai báo lớp Myclass. Hàm __init__ được gọi tự động khi các lớp được khởi tạo.

>>> classinstance = Myclass() # Chúng ta đã khởi tạo lớp và myvariable có giá trị 3 như đã nêu trong phương thức khởi tạo

>>> classinstance.myfunction(1, 2) #Phương thức myfunction của lớp Myclass trả về giá trị của biến myvariable

# Biến chung được khai báo ở tất cả các lớp

>>> classinstance2 = Myclass()

>>> classinstance.common

>>> classinstance2.common

# Vậy nếu chúng ta thay đổi giá trị của nó trong lớp Myclass thì nó sẽ thay đổi

# và các giá trị của nó trong các đối tượng được khởi tạo bởi lớp Myclass

>>> Myclass.common = 30

>>> classinstance.common

>>> classinstance2.common

# Và ở đây chúng ta không thay đổi biến lớp. Thay vì điều này

# chúng ta khai báo nó trong một đối tượng và gán cho nó một giá trị mới

>>> classinstance.common = 10

>>> classinstance.common

>>> classinstance2.common

>>> Myclass.common = 50

# Bây giờ việc thay đổi biến lớp sẽ không ảnh hưởng

# đối tượng biến của lớp này

>>> classinstance.common

>>> classinstance2.common

# Lớp sau là hậu duệ của lớp Myclass

# bằng cách kế thừa các thuộc tính và phương thức của nó, ai có thể tạo lớp đó

# kế thừa từ nhiều lớp, trong trường hợp này là mục

# như thế này: class Otherclass(Myclass1, Myclass2, MyclassN)

lớp Otherclass(Myclass):

Def __init__(self, arg1):

Tự.myvariable = 3

In arg1

>>> classinstance = Otherclass("xin chào")

Xin chào

>>> classinstance.myfunction(1, 2)

# Lớp này không có bài kiểm tra thuộc tính, nhưng chúng ta có thể

# khai báo một biến như vậy cho một đối tượng. Hơn thế nữa

# biến này sẽ chỉ là thành viên của classinstance.

>>> classinstance.test = 10

>>> classinstance.test

Ngoại lệ

Các ngoại lệ trong Python có cấu trúc try -ngoại trừ:

def một số chức năng():

Thử:

# Chia cho 0 gây ra lỗi

10 / 0

Ngoại trừ ZeroDivisionError:

# Nhưng chương trình không "Thực hiện thao tác bất hợp pháp"

# Và xử lý khối ngoại lệ tương ứng với lỗi “ZeroDivisionError”

In "Rất tiếc, không hợp lệ."

>>> fnngoại trừ()

Rất tiếc, không hợp lệ.

Nhập khẩu

Các thư viện bên ngoài có thể được kết nối bằng quy trình "nhập", trong đó có tên của thư viện được kết nối. Bạn cũng có thể sử dụng lệnh "from import" để có thể sử dụng một hàm từ thư viện:

nhập ngẫu nhiên #Nhập thư viện "ngẫu nhiên"

from time import clock #Và đồng thời chức năng “đồng hồ” từ thư viện “thời gian”

ngẫu nhiên = ngẫu nhiên.randint(1, 100)

>>> in ngẫu nhiên

Làm việc với hệ thống tập tin

Python có nhiều thư viện tích hợp. Trong ví dụ này, chúng tôi sẽ cố gắng lưu cấu trúc danh sách vào tệp nhị phân, đọc nó và lưu chuỗi vào tệp văn bản. Để chuyển đổi cấu trúc dữ liệu chúng ta sẽ sử dụng thư viện chuẩn “pickle”:

nhập khẩu dưa chua

mylist = ["Cái này", "là", 4, 13327]

# Mở file C:\binary.dat để ghi. ký hiệu "r"

# ngăn chặn việc thay thế các ký tự đặc biệt (chẳng hạn như \n, \t, \b, v.v.).

myfile = file(r"C:\binary.dat", "w")

dưa chua.dump(mylist, myfile)

myfile.close()

myfile = file(r"C:\text.txt", "w")

myfile.write("Đây là một chuỗi mẫu")

myfile.close()

myfile = file(r"C:\text.txt")

>>> in myfile.read()

"Đây là một chuỗi mẫu"

myfile.close()

# Mở file để đọc

myfile = file(r"C:\binary.dat")

danh sách đã tải = Pickle.load(myfile)

myfile.close()

>>> in danh sách đã tải

["Cái này", "là", 4, 13327]

Đặc điểm

  • Điều kiện có thể được kết hợp. 1 < a < 3 выполняется тогда, когда а больше 1, но меньше 3.
  • Sử dụng toán tử "del" để xóa các biến hoặc phần tử mảng.
  • Python mang đến những cơ hội tuyệt vời cho làm việc với danh sách. Bạn có thể sử dụng các toán tử khai báo cấu trúc danh sách. Toán tử for cho phép bạn chỉ định các thành phần trong danh sách theo một trình tự cụ thể và toán tử if cho phép bạn chọn các thành phần dựa trên một điều kiện.

>>> lst1 =

>>> lst2 =

>>> in

>>> in

# Toán tử "bất kỳ" trả về true nếu mặc dù

# nếu một trong các điều kiện trong đó được thỏa mãn.

>>> bất kỳ(i % 3 cho i trong )

ĐÚNG VẬY

# Thủ tục sau đây đếm số

# phần tử phù hợp trong danh sách

>>> tổng(1 cho i trong if i == 3)

>>> del lst1

>>> in lst1

>>> del lst1

  • Biến toàn cụcđược khai báo bên ngoài các hàm và có thể được đọc mà không cần khai báo. Nhưng nếu bạn cần thay đổi giá trị của một biến toàn cục từ một hàm thì bạn cần khai báo nó ở đầu hàm với từ khóa “global”, nếu không làm điều này thì Python sẽ khai báo một biến đó là chỉ có thể truy cập được vào chức năng đó.

số = 5

định nghĩa myfunc():

# Đầu ra 5

Số in

def anotherfunc():

# Điều này tạo ra một ngoại lệ vì biến toàn cục

# không được gọi từ một hàm. Python trong trường hợp này tạo ra

# biến có cùng tên bên trong hàm này và có thể truy cập được

# chỉ dành cho người vận hành hàm này.

Số in

Số = 3

def yetanotherfunc():

Số toàn cầu

# Và chỉ từ hàm này giá trị của biến mới được thay đổi.

Số = 3

Lời kết

Tất nhiên, bài viết này không mô tả hết các tính năng của Python. Tôi hy vọng bài viết này sẽ giúp ích cho bạn nếu bạn muốn tiếp tục học ngôn ngữ lập trình này.

Lợi ích của Python

  • Tốc độ thực thi của các chương trình viết bằng Python rất cao. Điều này là do các thư viện Python chính
    được viết bằng C++ và mất ít thời gian hơn để hoàn thành nhiệm vụ so với các ngôn ngữ cấp cao khác.
  • Vì điều này, bạn có thể viết các mô-đun Python của riêng mình bằng C hoặc C++
  • Trong thư viện Python tiêu chuẩn, bạn có thể tìm thấy các công cụ để làm việc với email, giao thức
    Internet, FTP, HTTP, cơ sở dữ liệu, v.v.
  • Các tập lệnh được viết bằng Python chạy trên hầu hết các hệ điều hành hiện đại. Tính di động này cho phép Python được sử dụng trong nhiều ứng dụng.
  • Python phù hợp với mọi giải pháp lập trình, có thể là chương trình văn phòng, ứng dụng web, ứng dụng GUI, v.v.
  • Hàng nghìn người đam mê từ khắp nơi trên thế giới đã làm việc để phát triển Python. Sự hỗ trợ cho các công nghệ hiện đại trong các thư viện tiêu chuẩn có thể là do Python được mở cho tất cả mọi người.

Trong bộ sưu tập này, chúng tôi đã tổng hợp những cuốn sách hữu ích nhất về ngôn ngữ lập trình Python sẽ giúp cả người mới bắt đầu và lập trình viên có kinh nghiệm học hỏi.
Tại đây, bạn sẽ tìm thấy tài liệu để tạo ứng dụng cũng như các hướng dẫn giúp bạn làm quen với các công cụ, làm chủ cơ sở dữ liệu và cải thiện các kỹ năng chuyên môn của mình.

Phần:

Cho những người mới bắt đầu

Hướng dẫn này cung cấp phần giới thiệu xuất sắc và được quốc tế công nhận về ngôn ngữ Python. Nó sẽ nhanh chóng dạy bạn cách viết mã hiệu quả, chất lượng cao. Thích hợp cho cả người mới bắt đầu lập trình và những người đã có kinh nghiệm sử dụng các ngôn ngữ khác. Ngoài lý thuyết, cuốn sách còn có các bài kiểm tra, bài tập và hình ảnh minh họa hữu ích - mọi thứ bạn cần để học Python 2 và 3. Ngoài ra, bạn sẽ được làm quen với một số tính năng nâng cao của ngôn ngữ mà chưa nhiều chuyên gia thành thạo.

Python là ngôn ngữ lập trình đa nền tảng đa mô hình, gần đây đã trở nên đặc biệt phổ biến ở phương Tây và các công ty lớn như Google, Apple và Microsoft. Nhờ cú pháp tối giản và cốt lõi mạnh mẽ, đây là một trong những ngôn ngữ hiệu quả nhất và dễ đọc nhất trên thế giới.

Sau khi đọc cuốn sách này, bạn sẽ học những kiến ​​thức cơ bản về ngôn ngữ một cách nhanh chóng và thú vị, sau đó chuyển sang xử lý ngoại lệ, phát triển web, SQL, khoa học dữ liệu và Google App Engine. Bạn cũng sẽ học cách viết ứng dụng Android và nhiều hơn thế nữa về sức mạnh mà Python mang lại cho bạn.

Một cuốn sách Python khác từng đoạt giải thưởng với 52 bài tập được chọn lọc kỹ lưỡng cho việc học ngôn ngữ. Sau khi phân tích chúng, bạn sẽ hiểu cách ngôn ngữ hoạt động, cách viết chương trình chính xác và cách sửa lỗi của chính bạn. Các chủ đề sau đây được đề cập:

  • Thiết lập môi trường;
  • Tổ chức mã;
  • Toán cơ bản;
  • Biến;
  • Dòng và văn bản;
  • Tương tác với người dùng;
  • Làm việc với các tập tin;
  • Vòng lặp và logic;
  • Cấu trúc dữ liệu;
  • Phát triển phần mềm;
  • Kế thừa và thành phần;
  • Mô-đun, lớp và đối tượng;
  • Gói;
  • Gỡ lỗi;
  • Kiểm tra tự động hóa;
  • Sự phát triển trò chơi;
  • Phát triển web.

Cuốn sách này dành cho người mới bắt đầu học lập trình. Nó sử dụng một cách tiếp cận học tập rất tiêu chuẩn, nhưng là một ngôn ngữ không chuẩn 🙂 Cần lưu ý rằng đây là một cuốn sách về những kiến ​​​​thức cơ bản về lập trình hơn là về Python.

Cuốn sách Lập trình Python cho người mới bắt đầu là một nơi tuyệt vời để bắt đầu. Đây là hướng dẫn chi tiết được viết riêng cho người mới bắt đầu muốn thành thạo ngôn ngữ này. Khi bạn đã học được những điều cơ bản, bạn sẽ chuyển sang lập trình hướng đối tượng và tạo tập lệnh CGI để xử lý dữ liệu biểu mẫu web và tìm hiểu cách tạo các ứng dụng cửa sổ đồ họa và phân phối chúng đến các thiết bị khác.

Với sự trợ giúp của hướng dẫn này, bạn sẽ có thể thực hiện tất cả các bước từ cài đặt trình thông dịch đến khởi chạy và gỡ lỗi các ứng dụng chính thức.

"Khóa học Python" là một câu chuyện đầy sức thuyết phục về ngôn ngữ Python. Trong nửa đầu của cuốn sách, bạn sẽ làm quen với các khái niệm ngôn ngữ cốt lõi như danh sách, từ điển, lớp và vòng lặp, đồng thời học cách viết mã rõ ràng, dễ đọc. Ngoài ra, bạn sẽ học cách kiểm tra chương trình của mình. Nửa sau của cuốn sách yêu cầu bạn áp dụng kiến ​​thức của mình vào thực tế bằng cách viết 3 dự án: một trò chơi điện tử như Space Invaders, một ứng dụng trực quan hóa dữ liệu và một ứng dụng web đơn giản.

Đây là một bảng ghi chú bỏ túi rất tiện dụng được tạo cho Python 3.4 và 2.7. Trong đó bạn sẽ tìm thấy những thông tin cần thiết nhất về các khía cạnh khác nhau của ngôn ngữ. Các chủ đề được đề cập:

  • Các loại đối tượng tích hợp;
  • Biểu thức và cú pháp để tạo và xử lý đối tượng;
  • Chức năng và mô-đun;
  • OOP (chúng tôi có một cái riêng);
  • Các hàm, ngoại lệ và thuộc tính tích hợp sẵn;
  • Phương pháp nạp chồng toán tử;
  • Các mô-đun và phần mở rộng phổ biến;
  • Tùy chọn dòng lệnh và công cụ phát triển;
  • Gợi ý;
  • API cơ sở dữ liệu Python SQL.

Một cuốn sách học Python với nhiều ví dụ thực tế.

Các ví dụ thực tế cũng có thể được tìm thấy trong phần của chúng tôi. Ví dụ: hãy đọc hướng dẫn của chúng tôi về cách tự triển khai chức năng zip.

Mục đích của cuốn sách này là giới thiệu cho người đọc các công cụ phổ biến và các nguyên tắc mã hóa khác nhau được chấp nhận trong cộng đồng nguồn mở. Những kiến ​​thức cơ bản về ngôn ngữ Python không được đề cập trong cuốn sách này vì nó hoàn toàn không đề cập đến vấn đề đó.

Phần đầu tiên của cuốn sách mô tả các trình soạn thảo văn bản và môi trường phát triển khác nhau có thể được sử dụng để viết chương trình Python, cũng như nhiều loại trình thông dịch cho các hệ thống khác nhau. Phần thứ hai của cuốn sách giới thiệu phong cách viết mã được áp dụng trong cộng đồng nguồn mở. Phần thứ ba của cuốn sách trình bày tổng quan ngắn gọn về nhiều thư viện Python được sử dụng trong hầu hết các dự án nguồn mở.

Sự khác biệt chính giữa cuốn sách này và tất cả các sách hướng dẫn khác dành cho người mới bắt đầu học Python là song song với việc nghiên cứu tài liệu lý thuyết, người đọc sẽ làm quen với việc triển khai các dự án cho các trò chơi khác nhau. Bằng cách này, lập trình viên tương lai sẽ có thể hiểu rõ hơn cách sử dụng một số tính năng ngôn ngữ nhất định trong các dự án thực tế.

Cuốn sách bao gồm những kiến ​​thức cơ bản về cả ngôn ngữ Python và lập trình nói chung. Một cuốn sách tuyệt vời cho lần đầu bạn làm quen với ngôn ngữ này.

Dành cho nâng cao

Nếu bạn muốn chuyển sang Python 3 hoặc cập nhật chính xác mã cũ được viết bằng Python 2 thì cuốn sách này là dành cho bạn. Và dành cho bạn nữa - về việc chuyển một dự án từ Python 2 sang Python 3 một cách dễ dàng.

Trong cuốn sách này, bạn sẽ tìm thấy nhiều ví dụ thực tế trong Python 3.3, mỗi ví dụ đều được thảo luận chi tiết. Các chủ đề sau đây được đề cập:

    • Cấu trúc dữ liệu và thuật toán;
    • Dòng và văn bản;
    • Số, ngày và giờ;
    • Máy lặp và máy phát điện;
    • Tập tin và hoạt động đọc/ghi;
    • Mã hóa và xử lý dữ liệu;
    • Chức năng;
    • Các lớp và đối tượng;
    • Siêu lập trình;
    • Mô-đun và gói;
    • Lập trình web;
    • Năng lực cạnh tranh;
    • Quản trị hệ thống;
    • Kiểm tra và gỡ lỗi;
    • Phần mở rộng C.

Khi đọc cuốn sách này, bạn sẽ phát triển một ứng dụng web đồng thời tìm hiểu những lợi ích thực tế của việc phát triển dựa trên thử nghiệm. Bạn sẽ đề cập đến các chủ đề như tích hợp cơ sở dữ liệu, công cụ tự động hóa JS, NoSQL, ổ cắm web và lập trình không đồng bộ.

Cuốn sách trình bày chi tiết về Python 3: kiểu dữ liệu, toán tử, điều kiện, vòng lặp, biểu thức chính quy, hàm, công cụ lập trình hướng đối tượng, làm việc với các tệp và thư mục cũng như các mô-đun thư viện tiêu chuẩn được sử dụng thường xuyên. Ngoài ra, cuốn sách còn tập trung vào cơ sở dữ liệu SQLite, giao diện truy cập cơ sở dữ liệu và các phương pháp lấy dữ liệu từ Internet.

Phần thứ hai của cuốn sách hoàn toàn dành cho thư viện PyQt 5, cho phép bạn tạo các ứng dụng GUI bằng Python. Ở đây chúng tôi xem xét các công cụ để xử lý tín hiệu và sự kiện, quản lý thuộc tính cửa sổ, phát triển ứng dụng đa luồng, mô tả các thành phần chính (nút, trường văn bản, danh sách, bảng, menu, thanh công cụ, v.v.), các tùy chọn cho vị trí của chúng bên trong cửa sổ, các công cụ để làm việc với cơ sở dữ liệu dữ liệu, đa phương tiện, in tài liệu và xuất chúng ở định dạng Adobe PDF.

Các chương trình Python của bạn có thể hoạt động nhưng chúng có thể chạy nhanh hơn. Hướng dẫn thực tế này sẽ giúp bạn hiểu rõ hơn về ngôn ngữ và bạn sẽ học cách tìm ra các điểm nghẽn trong mã của mình cũng như cải thiện tốc độ của các chương trình hoạt động với lượng lớn dữ liệu.

Như tiêu đề gợi ý, mục đích của cuốn sách này là cung cấp sự hiểu biết đầy đủ nhất về khung phát triển ứng dụng web Django. Do cuốn sách đã được xuất bản bằng tiếng Nga vào năm 2010 nên nó thảo luận về một phiên bản framework đã lỗi thời, Django 1.1. Tuy nhiên, bạn vẫn nên đọc cuốn sách này vì nó có thể dạy cho bạn những điều cơ bản về Django. Và thực tế không có cuốn sách hay nào về khuôn khổ này bằng tiếng Nga ngoại trừ cuốn sách này.

Các tác giả Adrian Golovaty và Jacob Kaplan-Moss xem xét kỹ hơn các thành phần của khung. Cuốn sách chứa rất nhiều tài liệu về phát triển tài nguyên Internet bằng Django - từ những điều cơ bản đến các chủ đề đặc biệt như tạo PDF và RSS, bảo mật, bộ nhớ đệm và quốc tế hóa. Bạn nên nắm vững các khái niệm cơ bản về phát triển web trước khi đọc cuốn sách này.

Sự phát triển trò chơi

"Tạo trò chơi với Python & Pygame" là cuốn sách dành riêng cho thư viện phát triển trò chơi Pygame. Mỗi chương cung cấp mã nguồn đầy đủ cho trò chơi mới và giải thích chi tiết về các nguyên tắc phát triển được sử dụng.

Phát minh trò chơi máy tính của riêng bạn bằng Python dạy bạn cách lập trình bằng Python bằng cách lấy việc phát triển trò chơi làm ví dụ. Các trò chơi sau này khám phá việc tạo trò chơi 2D bằng thư viện Pygame. Bạn sẽ học:

  • sử dụng vòng lặp, biến và biểu thức logic;
  • sử dụng các cấu trúc dữ liệu như danh sách, từ điển và bộ dữ liệu;
  • gỡ lỗi chương trình và tìm lỗi;
  • viết AI đơn giản cho game;
  • tạo đồ họa và hoạt ảnh đơn giản cho trò chơi của bạn.

Phân tích dữ liệu và học máy

Nâng cao kỹ năng của bạn bằng cách làm việc với các cấu trúc dữ liệu và thuật toán theo cách mới - một cách khoa học. Khám phá các ví dụ về các hệ thống phức tạp với lời giải thích rõ ràng. Cuốn sách gợi ý:

  • Tìm hiểu các khái niệm như mảng NumPy, phương pháp SciPy, xử lý tín hiệu, biến đổi Fourier nhanh và bảng băm;
  • làm quen với các mô hình trừu tượng của các hệ vật lý phức tạp, fractal và máy Turing;
  • khám phá các định luật và lý thuyết khoa học;
  • phân tích các ví dụ về các vấn đề phức tạp.

Cuốn sách này giới thiệu Python như một công cụ để giải quyết các vấn đề đòi hỏi tính toán quy mô lớn. Mục tiêu của cuốn sách này là hướng dẫn người đọc cách sử dụng ngăn xếp khai thác dữ liệu của Python để lưu trữ, thao tác và hiểu dữ liệu một cách hiệu quả.

Mỗi chương của cuốn sách được dành cho một thư viện cụ thể để làm việc với dữ liệu lớn. Chương đầu tiên bao gồm IPython và Jupyter, chương thứ hai bao gồm NumPy và chương thứ ba bao gồm Pandas. Chương thứ tư chứa tài liệu về Matplotlib, chương thứ năm - về Scikit-Learn.

"Python để phân tích dữ liệu" nói về tất cả các cách xử lý dữ liệu. Cuốn sách là sự giới thiệu tuyệt vời về lĩnh vực tính toán khoa học. Đây là những gì bạn sẽ biết:

  • vỏ IPython tương tác;
  • thư viện tính toán số NumPy:
  • thư viện phân tích dữ liệu gấu trúc;
  • thư viện để vẽ đồ thị matplotlib.

Bạn cũng sẽ học cách đo lường dữ liệu theo thời gian và giải quyết các vấn đề phân tích trong nhiều lĩnh vực khoa học.

Cuốn sách này dạy cho bạn các kỹ thuật phân tích dữ liệu khác nhau bằng Python. Đây là những gì bạn sẽ học được sau khi đọc:

  • quản lý dữ liệu;
  • giải quyết các vấn đề khoa học dữ liệu;
  • tạo ra hình ảnh trực quan chất lượng cao;
  • áp dụng hồi quy tuyến tính để đánh giá mối quan hệ giữa các biến;
  • tạo ra hệ thống khuyến nghị;
  • xử lý dữ liệu lớn.

Sách hướng dẫn này giải thích các nguyên tắc xử lý ngôn ngữ tự nhiên bằng ngôn ngữ rõ ràng. Bạn sẽ học cách viết các chương trình có thể xử lý các tập hợp văn bản phi cấu trúc lớn, có quyền truy cập vào các tập dữ liệu lớn và làm quen với các thuật toán cơ bản.

Khác

Nếu bạn đã từng dành hàng giờ để đổi tên tệp hoặc cập nhật hàng trăm ô trong bảng, bạn sẽ biết việc đó có thể mệt mỏi đến mức nào. Bạn có muốn tìm hiểu cách tự động hóa các quy trình như vậy không? Automate the Boring Stuff with Python hướng dẫn bạn cách tạo các chương trình có thể giải quyết nhiều tác vụ thông thường khác nhau trong vài phút. Sau khi đọc, bạn sẽ học cách tự động hóa các quy trình sau:

  • tìm kiếm văn bản được chỉ định trong tệp;
  • tạo, cập nhật, di chuyển và đổi tên các tập tin và thư mục;
  • tìm kiếm và tải dữ liệu trên Internet;
  • cập nhật, định dạng dữ liệu trong bảng Excel;
  • chia tách, hợp nhất và mã hóa các tập tin PDF;
  • gửi thư và thông báo;
  • điền vào các mẫu đơn trực tuyến.

Một cuốn sách xuất sắc với rào cản gia nhập tối thiểu. Nó nói nhiều về sinh học hơn là ngôn ngữ, nhưng nó chắc chắn sẽ hữu ích cho tất cả những người làm việc trong lĩnh vực này. Được trang bị một số lượng lớn các ví dụ được phân tích với độ phức tạp khác nhau.

Cuốn sách này bao gồm những điều cơ bản về lập trình hệ thống Raspberry Pi. Tác giả đã biên soạn nhiều tập lệnh cho bạn và cũng cung cấp hướng dẫn chi tiết và dễ hiểu để bạn tự tạo tập lệnh. Ngoài các bài tập thông thường, mời các bạn thực hiện ba dự án: trò chơi “Người treo cổ”, đồng hồ LED và robot điều khiển bằng phần mềm.

"Bẻ khóa mật mã bí mật bằng Python" không chỉ kể về lịch sử của các mật mã hiện có mà còn dạy bạn cách tạo các chương trình mã hóa và phá mật mã của riêng bạn. Một cuốn sách tuyệt vời để tìm hiểu những điều cơ bản về mật mã.

Chia sẻ những cuốn sách hữu ích về Python trong phần bình luận!

VỀ Python(phát âm tốt hơn là "python", mặc dù một số người nói là "python") - chủ đề của nghiên cứu này, được nói hay nhất bởi người tạo ra ngôn ngữ lập trình này, người Hà Lan Guido van Rossum:

"Python là ngôn ngữ lập trình cấp cao, hướng đối tượng, thông dịch với ngữ nghĩa động. Cấu trúc dữ liệu cấp cao tích hợp kết hợp với gõ động và ràng buộc làm cho ngôn ngữ trở nên hấp dẫn để phát triển ứng dụng nhanh chóng (RAD, Phát triển ứng dụng nhanh). Nó cũng có thể được sử dụng như một ngôn ngữ kịch bản để giao tiếp với các thành phần phần mềm. Cú pháp Python dễ học và nhấn mạnh vào khả năng đọc mã, giúp giảm chi phí bảo trì phần mềm. Python hỗ trợ các mô-đun và gói, khuyến khích tính mô-đun và tái sử dụng mã. Trình thông dịch Python và thư viện tiêu chuẩn lớn được cung cấp miễn phí dưới dạng mã nguồn và mã thực thi cho tất cả các nền tảng chính và có thể được phân phối lại miễn phí."

Khi chúng ta nghiên cứu, ý nghĩa của định nghĩa này sẽ được tiết lộ, nhưng hiện tại chỉ cần biết rằng Python là ngôn ngữ lập trình phổ quát là đủ. Nó có những ưu điểm và nhược điểm cũng như các lĩnh vực ứng dụng. Python có một thư viện tiêu chuẩn mở rộng để giải quyết nhiều vấn đề. Các thư viện chất lượng cao dành cho Python có sẵn trên Internet với nhiều lĩnh vực chủ đề khác nhau: công cụ xử lý văn bản và công nghệ Internet, xử lý hình ảnh, công cụ tạo ứng dụng, cơ chế truy cập cơ sở dữ liệu, gói dành cho máy tính khoa học, thư viện xây dựng giao diện đồ họa, v.v. Ngoài ra, Python có các phương tiện khá đơn giản để tích hợp với các ngôn ngữ C, C++ (và Java), bằng cách nhúng trình thông dịch vào các chương trình bằng các ngôn ngữ này và ngược lại, bằng cách sử dụng các thư viện được viết bằng các ngôn ngữ này trong chương trình Python. Ngôn ngữ Python hỗ trợ một số mô hình lập trình: mệnh lệnh (thủ tục, cấu trúc, cách tiếp cận mô-đun), lập trình hướng đối tượng và chức năng.

Chúng ta có thể coi Python là toàn bộ công nghệ để tạo ra các sản phẩm phần mềm (và nguyên mẫu của chúng). Nó có sẵn trên hầu hết các nền tảng hiện đại (cả 32 bit và 64 bit) với trình biên dịch C và trên nền tảng Java.

Có vẻ như trong ngành công nghiệp phần mềm không có chỗ cho bất kỳ thứ gì khác ngoài C/C++, Java, Visual Basic, C#. Tuy nhiên, không phải vậy. Có lẽ, nhờ khóa học và bài tập thực hành này, Python sẽ có được những học viên mới mà nó sẽ trở thành một công cụ không thể thiếu.

Làm thế nào để mô tả ngôn ngữ?

Bài giảng này không nhằm mục đích mô tả Python một cách có hệ thống; có một hướng dẫn tham khảo ban đầu cho việc đó. Ở đây, đề xuất xem xét ngôn ngữ từ nhiều khía cạnh cùng một lúc, điều này đạt được bằng một tập hợp các ví dụ sẽ cho phép bạn nhanh chóng làm quen với lập trình thực tế hơn là trong trường hợp tiếp cận học thuật nghiêm ngặt.

Tuy nhiên, điều đáng chú ý là cách tiếp cận chính xác để mô tả ngôn ngữ. Tạo một chương trình luôn là một giao tiếp trong đó người lập trình truyền đến máy tính những thông tin cần thiết để máy tính thực hiện các hành động. Cách người lập trình hiểu những hành động này (tức là “ý nghĩa”) có thể được gọi là ngữ nghĩa. Phương tiện truyền đạt ý nghĩa này là cú pháp ngôn ngữ lập trình. Chà, những gì thông dịch viên làm dựa trên những gì được thông qua thường được gọi là thực dụng. Khi viết một chương trình, điều quan trọng là không có lỗi nào trong chuỗi này.

Cú pháp là một phần được hình thức hóa hoàn toàn: nó có thể được mô tả trong ngôn ngữ trang trọng sơ đồ cú pháp (đó là công việc mà các tài liệu tham khảo thực hiện). Biểu hiện của ngữ dụng học chính là trình thông dịch ngôn ngữ. Chính anh ta là người đọc “tin nhắn” được ghi theo cú pháp và biến nó thành hành động theo thuật toán được nhúng trong đó. Thành phần không chính thức duy nhất vẫn là ngữ nghĩa. Khó khăn lớn nhất của việc lập trình nằm ở việc chuyển ý nghĩa thành mô tả chính thức. Cú pháp của Python có các tính năng mạnh mẽ giúp đưa sự hiểu biết của người lập trình về một vấn đề gần hơn với sự "hiểu" của người phiên dịch về vấn đề đó. Cấu trúc bên trong của Python sẽ được thảo luận trong một trong những bài giảng cuối cùng.

Lịch sử của ngôn ngữ Python

Python được Guido van Rossum bắt đầu vào năm 1991 khi ông đang làm việc trên hệ điều hành Amoeba phân tán. Anh ấy cần một ngôn ngữ có thể mở rộng để cung cấp hỗ trợ cho các cuộc gọi hệ thống. ABC và Modula-3 được lấy làm cơ sở. Ông chọn Python làm tên để vinh danh loạt phim hài Monty Python's Flying Circus của đài BBC, chứ không hề đặt theo tên của con rắn. Kể từ đó, Python đã phát triển với sự hỗ trợ của các tổ chức nơi Guido làm việc. Ngôn ngữ đang được cải thiện đặc biệt tích cực ở thời điểm hiện tại, khi không chỉ đội ngũ sáng tạo mà còn cả cộng đồng lập trình viên từ khắp nơi trên thế giới đang làm việc với nó. Tuy nhiên, quyết định cuối cùng về hướng phát triển ngôn ngữ vẫn thuộc về Guido van Rossum.