Recent Posts

banner-top-it-job-right.gif

Archive

Tags

Related Posts

Kiến thức PYTHON - Từ cơ bản tới nâng cao

Python là một dạng ngôn ngữ lập trình được sử dụng khá phổ biến trên thế giới bởi những tiện ích mà nó đem lại. Nếu như bạn vẫn còn mơ hồ về Python thì bài viết này Jt1 sẽ giúp các lập trình viên khám phá “tất tần tật” mọi thứ về ngôn ngữ lập trình này từ cơ bản tới nâng cao.


1. Python là gì?

Python là một ngôn ngữ lập trình máy tính hướng tới đối tượng bậc cao, thường được dùng để phát triển các website và một số ứng dụng khác.

Python là một dạng ngôn ngữ lập trình

Lập trình viên ưu tiên sử dụng Python bởi nó rất dễ dàng để mã hóa và dễ hiểu. Nó cũng là một ngôn ngữ lập trình phù hợp giúp thu hẹp khoảng cách giữa doanh nghiệp và nhà phát triển. Tuy nhiên để so sánh thì Python chậm hơn C ++, C #, Java, điều này là do thiếu trình tối ưu hóa Just In Time. Ràng buộc không gian trắng cú pháp của Python làm cho nó hơi khó thực hiện đối với các lập trình viên mới vào nghề.


Cách Python hoạt động là khiến trình thông dịch chịu trách nhiệm dịch ngôn ngữ Python cấp cao sang ngôn ngữ máy cấp thấp.

2. Biến - Loại đối tượng và phạm vi của Python

Các biến lưu trữ thông tin có thể được sử dụng trong chương trình của bạn như là cách để giữ đầu vào của người dùng, trạng thái cục bộ của chương trình, v.v. Các biến thường được đặt tên để chúng có thể được tham chiếu trong mã. Ở Python hỗ trợ số, chuỗi, bộ, danh sách, bộ dữ liệu và từ điển.


Về phần số thì Python có hỗ trợ số nguyên, số thập phân và float.


value = 1 #integer

value = 1.2 #float with a floating point


Về chuỗi là các chữ cái, giá trị của chuỗi được đặt trong dấu ngoặc kép. Chúng bất biến và khi đã được tạo thì không thể thay đổi. Khi các biến chuỗi được gán một giá trị mới bên trong, Python tạo một đối tượng mới để lưu trữ giá trị.


Về phạm vi, các biến được khai báo trong một hàm, như một ví dụ, chỉ có thể tồn tại trong khối. Một khi khối tồn tại, các biến cũng không thể truy cập được. Các biến có thể được truy cập từ bất kỳ hàm nào có phạm vi toàn cục. Bạn có thể khai báo một biến toàn cục bên ngoài các hàm.


3. Hoạt động

Hoạt động số, Python hỗ trợ cơ bản *, /, +, - và Python cũng hỗ trợ phân chia, lũy thừa và Modulus.


Về hoạt động của chuỗi, hàm concat 'A' + 'B' = 'AB' và lặp lại chuỗi sẽ là A * * 3 sẽ lặp lại A ba lần: AAA.


Đối với Regex, sử dụng:

split (): tách một chuỗi thành một danh sách thông qua regex.

sub (): thay thế chuỗi phù hợp thông qua regex.

subn (): thay thế chuỗi phù hợp thông qua regex và trả về số lần thay thế.


Đặt hoạt động, chúng ta có thể định nghĩa một biến đặt là: a = {1,2,3}


4. Bình luận

Khi muốn nhận xét dòng đơn sử dụng # và khi muốn nhận xét nhiều dòng thì dùng ``` đặt ở đầu và cuối bình luận.


5. Biểu thức

Biểu thức có thể thực hiện các hoạt động boolean như:

Bình đẳng: ==

Không bằng :! =

Lớn hơn:>

Ít hơn: <

Lớn hơn hoặc bằng> =

Ít hoặc bằng <=


6. Cách tẩy

Chuyển đổi một đối tượng thành một chuỗi và kết xuất chuỗi thành một tệp được gọi là tẩy. Điều ngược lại được gọi là giải nén.


7. Chức năng

Các hàm cho phép chúng ta chia một ứng dụng lớn thành các phần nhỏ hơn, các hàm là chuỗi các câu lệnh mà bạn có thể thực thi trong mã của mình. Nếu bạn thấy sự lặp lại trong mã của mình thì hãy tạo một hàm có thể sử dụng lại và sử dụng nó trong chương trình của bạn. Các chức năng cũng có thể tham khảo các chức năng khác và loại bỏ sự lặp lại trong mã của bạn.


8. Các Mô-đun

Về khái niệm thì, Python được vận chuyển với hơn 200 mô-đun tiêu chuẩn, Mô-đun là một thành phần nhóm chức năng tương tự của giải pháp python của bạn. Bất kỳ tập tin mã python có thể được đóng gói như một mô-đun và sau đó nó có thể được nhập.

PYTHONPATH là một biến môi trường, ở đây cho biết nơi trình thông dịch Python cần điều hướng để định vị các mô-đun. PYTHONHOME là một đường dẫn tìm kiếm mô-đun thay thế.


9. Các gói

Gói là một thư mục của các mô-đun, các gói cho phép bạn tổ chức các mô-đun tốt hơn giúp bạn giải quyết các vấn đề và tìm kiếm các mô-đun dễ dàng hơn. Một gói có thể chứa một số lượng lớn các mô-đun. Nếu giải pháp của bạn cung cấp chức năng tương tự thì có thể nhóm các mô-đun thành một gói bằng lệnh:

from packageroot.packagefolder.mod import my_object

10. Các điều kiện

Điều kiện để viết:

if a == b:

print 'a is b'

elif a < b:

print 'a is less than b'

elif a > b:

print 'a is greater than b'

else:

print 'a is different'

Lưu ý rằng các dấu hai chấm và ngoặc được viết để thể hiện sự logic trong hàm.

11. Các vòng lặp

Để cung cấp một điều kiện và chạy vòng lặp cho đến khi điều kiện được đáp ứng sử dụng lệnh:

while (input < 0):

do_something(input)

input = input-1

Nếu muốn kết thúc các vòng lặp, sử dụng lệnh:

for i in range(0,10):

if (i==5):

break

while True:

x = get_value()

if (x==1):

break

12. Lệnh truy hồi

Quy tắc là sẽ là các lệnh:

0! = 1 #Factorial of 0 is 1

n! = n(n-1)! #Factorial of n is n * factorial of n-1


Các bước bắt đầu từ việc tạo một hàm gọi là giai thừa với đầu vào n và nếu n = 0 trả về 1 làm n x giai thừa của n-1:


def factorial(n):

if n==0:

return 1

else:

return n * factorial(n-1)


13. Các khung và Stack

Mã Python được tải vào các khung được đặt trong Stack, các hàm được tải trong một khung cùng với các tham số và biến. Stack phác thảo việc thực hiện các chức năng và các biến được khai báo bên ngoài các hàm được lưu trữ trong __main__.


14. Về bộ sưu tập dữ liệu

Danh sách là các cấu trúc dữ liệu có thể chứa một chuỗi các giá trị của bất kỳ loại dữ liệu nào, chúng có thể thay đổi (có thể cập nhật). Danh sách được lập chỉ mục bởi số nguyên, để tạo danh sách, sử dụng dấu ngoặc vuông: my_list = ['A', 'B'].


Để thêm / cập nhật / xóa một mục, sử dụng chỉ mục:


my_list.append ('C') #adds at the end

my_list [1] = 'D' #update

my_list.pop (1) # removes


Bộ dữ liệu giống như các danh sách theo nghĩa là chúng có thể lưu trữ một chuỗi các đối tượng và nó nhanh hơn danh sách, bất biến:


my_tuple = tuple()

or

my_tuple = 'f','m'

or

my_tuple = ('f', 'm')


Về bộ từ điển thì từ điển là một trong những cấu trúc dữ liệu quan trọng nhất trong thế giới lập trình. Nó lưu trữ các đối tượng cặp khóa / giá trị. Nó có nhiều lợi ích, ví dụ: tối ưu hóa chức năng truy xuất dữ liệu. Bạn có thể sử dụng lệnh sau:


my_dictionary = dict()

my_dictionary['my_key'] = 1

my_dictionary['another_key'] = 2


15. Biên dịch và liên kết

Các tính năng này có thể được sử dụng để sử dụng một tệp được viết bằng ngôn ngữ khác, ví dụ: C hoặc C ++, v.v. Khi mã được ghi vào một tệp thì tệp có thể được đặt trong thư mục Mô-đun. Điều quan trọng là thêm một dòng trong tệp Setup.local để đảm bảo rằng tệp mới được tạo có thể được tải.


16. Biến lặp

Biến lặp cho phép di chuyển qua bộ sưu tập, tất cả các trình vòng lặp chứa các hàm __iter __ () và __next __ (). Đơn giản nhất là bạn chỉ cần thực hiện iter (x) trên danh sách, từ điển, chuỗi hoặc bộ.


Ở phần này thì bộ lọc có nhiệm vụ lọc ra các giá trị dựa trên một điều kiện. Bản đồ áp dụng một tính toán trên mỗi giá trị của một bộ sưu tập nó phản ánh một giá trị này sang một giá trị khác, ví dụ: chuyển đổi văn bản thành số nguyên.


17. Thiết kế hướng đối tượng và các lớp

Python cho phép chúng ta tạo các loại tùy chỉnh của mình. Những kiểu do người dùng định nghĩa được gọi là các lớp. Các lớp có thể có các thuộc tính / thuộc tính và chức năng tùy chỉnh, thiết kế hướng đối tượng cho phép các lập trình viên xác định mô hình kinh doanh của họ là các đối tượng với các thuộc tính và chức năng cần thiết. Python cũng hỗ trợ sự kế thừa. Bạn sử dụng câu lệnh:


class MyClass:

def MyClassFunction(self): #self = reference to the object

return 5

#Create new instance of MyClass and then call the function

m = MyClass()

returned_value = m.MyClassFunction()


Lưu ý rằng hàm __init__ có mặt trong tất cả các lớp. Nó được thực thi khi chúng ta được yêu cầu khởi tạo một đối tượng của một lớp. Hàm __init__ có thể lấy bất kỳ thuộc tính nào mà chúng ta muốn đặt:


class MyClass:

def __init__(self, first_property):

self.first_property = first_property

def MyClassFunction(self):

return self.first_property


#Create an instance

m = MyClass(123)

r = m.MyClassFunction()