+4

Tổng quan về Python

Tổng quan

Thời gian gần đây mình đang có hứng thú với python và mình quyết định tìm hiểu về nó. Những gì mình tìm hiểu được sẽ cố gắng viết lại trên Viblo để chia sẻ lại cho mọi người - những người đang và muốn tìm hiểu về nó như mình. Bắt đầu quá trình đi tìm kiếm vẻ đẹp của nó. Lang thang tìm tài liệu đọc, mình biết được rằng Python là một ngôn ngữ lập trình mã nguồn mở, bậc cao ra đời từ năm 1990. Năm năm trước khi PHP - ngôn ngữ mà hiện mình đang sử dụng hàng ngày được ra đời (PHP 1995). Các phiên bản của python được cập nhật thường xuyên với nhiều tính năng mới. Tính tới thời điểm bài viết này ra đời, có 2 phiên bản python phổ biến nhất là: python 2 và python 3 với bản mới nhất tương ứng là: 2.7.13 và 3.6.2

Ưu điểm

Python là một ngôn ngữ lập trình hướng đối tượng, thông dịch và cấp phát bộ nhớ động. Với các ưu điểm chính được các developer đi trước đánh giá như:

  • Chu trình chỉnh sửa, kiểm tra lỗi nhanh, gỡ lỗi dễ dàng với một trình debugger được viết bằng chính python.
  • Cú pháp đơn giản, dễ học dễ đọc, cấu trúc rõ ràng, sáng sủa giúp làm giảm chi phí bảo trì. Code cũng ngắn gọn giúp lập trình một cách nhanh chóng và đạt hiệu quả cao.
  • Độ tin cậy cao với rất nhiều module, thư viện hỗ trợ để làm từng công việc, đặc biệt phục vụ cho xử lý dữ liệu lớn giúp xây dựng các hệ thống Recommend System với Deep Learning - một cụm từ đang hot hiện nay.
  • Dễ dàng để kết hợp với các ngôn ngữ lập trình như: C, C++, Java...
  • Và còn nhiều ưu điểm mà mình chưa thể liệt kê ra hết. 😄

Ứng dụng

Python được ứng dụng vào rất nhiều mục đích như:

  • Lập trình game: Cái này mình tìm hiểu trên mạng thấy có đề cập nhưng mình cũng chưa chắc về điều này.
  • Lập trình web: Một số website phổ biến dựa trên python như: Youtube, Dropbox, Survey Monkey, Google, Quora, Yahoo Maps, Instagram...
  • Hỗ trợ build các ứng dụng GUI: Sublime text, Blender, Ansible, Ubuntu..
  • Xây dựng các hệ thống Machine Learning với python:
    • Tensorflow: Thư viện mở từ Google Brain, cung cấp nhiều bội API cho học máy với mạng noron nhân tạo
    • numpy: Xử lý các đối tượng mảng N chiều
    • pandas: Thư viện phân tích dữ liệu Python, bao gồm các cấu trúc như khung dữ liệu
    • scikit-learn: Các giải thuật machine learning cho việc phân tích dữ liệu và khai thác dữ liệu

Cài đặt python và chạy ứng dụng cơ bản đầu tiên

Cài đặt

  • Trên window: Ta truy cập trang download chính thức của python cho window và tải trình cài đặt tương ứng về máy (32 bits, 64 bits) và làm theo hướng dẫn.
  • Trên ubuntu: Chúng ta có thể cài đặt thông qua command line:
# Cài đặt python 2:
sudo apt-get install python
# Cài đặt python 3:
sudo apt-get install python3

# Kiểm tra binary của python sau khi cài, truy cập python console qua câu lệnh:
python        # Cho python2
python3      # Cho python3
Kết quả:
Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 
-----------------------
Python 3.5.2 (default, Nov 17 2016, 17:05:23) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

Chạy ứng dụng cơ bản đầu tiên

Các file chứa mã nguồn python được lưu dưới dạng đuôi mở rộng dạng *.py. Dấu # để comment, không cho chạy phần code từ sau dấu # đế hết dòng cuối dòng. Ví dụ, ta tạo file có tên là HelloWorld.py lưu vào thư mục python-basic với nội dung như sau:

print 'Welcome to Python!'
# print('Welcome to Python 3!')

print 'Python 2: x = 1/3 <=> x = ' + str(1/3)
# print('Python 3: x = 1/3 <=> x = ' + str(1/3))

print 'Python 2: x = -1/3 <=> x = ' + str(-1/3)
# print('Python 3: x = -1/3 <=> x = ' + str(-1/3))

Hãy chạy thử nào bằng cách gõ lệnh python HelloWorld.py tại cửa sổ command line. Vậy bạn sẽ thấy gì? Dưới đây sẽ là những gì bạn thấy:

Welcome to Python!
Python 2: x = 1/3 <=> x = 0
Python 2: x = -1/3 <=> x = -1

Chờ chút, vậy những dòng có dấu # đâu rồi? Như mình vừa nói ở trên, dấu # là để comment không cho chạy code, vì nó đặt ngay ở đầu dòng nên cả dòng code đấy sẽ bị bỏ qua. Hãy ghi nhớ cách comment nhé!

Bây giờ, nếu bạn đang cài cả hai bản python và python3 trên máy, hãy sửa lại đoạn trên một chút bằng cách đảo comment. Tức là những dòng code đang comment thì ta xóa bỏ dấu # đi và ngược lại, những dòng code chưa có comment thì ta comment dòng đó lại. Được rồi, bây giờ chạy lệnh python3 HelloWorld.py. Bạn sẽ thấy gì?

Welcome to Python 3!
Python 3: x = 1/3 <=> x = 0.3333333333333333
Python 3: x = -1/3 <=> x = -0.3333333333333333

Chỉ là một ứng dụng HelloWorld nhưng nó mang cho mình nhiều điều bất ngờ khi chạy HelloWorld.py trên hai phiên bản python2 và python3. Tuy cùng một phép tính là 1/3-1/3 nhưng kết quả ở hai phiên bản là khác nhau. Python 2 chấp nhận print in ra màn hình theo 2 kiểu là:

print 'string'
# và
print('string')

Mình đã biết được python3 thì đã loại bỏ cách đầu tiên. Và phiên bản 3 cũng thay đổi kết quả đối với phép chia / mà bạn vừa thấy. 😃

Kết luận

Trên đây là bài viết đầu tiên mình note lại khi tìm hiểu về Python. Mình sẽ cố gắng ghi thêm các bài khác về Python trong quá trình tìm hiểu như đã đề cập. Trong bài viết sau, chúng ta sẽ cùng tìm hiểu thêm về các toán tử cơ bản trong python. Sử dụng các biểu thức rẽ nhánh, và vòng lặp trong python để giải quyết bài luyện tập nho nhỏ.

  • Toán tử cơ bản trong python
  • Biểu thức rẽ nhánh trong python

☕️☕️ Nếu thấy nội dung này bổ ích, hãy mời tôi một tách cà phê nha! https://kimyvgy.webee.asia


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí