Ngôn ngữ Python và 15 sự thật bạn có thể chưa biết

Dùng ngôn ngữ Python hàng ngày, nhưng bạn có biết rằng Python vốn là một dự án sở thích dịp Giáng Sinh? Không chỉ có một nguồn gốc thú vị, còn có rất nhiều sự thật khác về ngôn ngữ này làm cho bạn hứng thú đấy. Hãy khám phá 15 sự thật đó ngay trong bài viết này nhé!

1. Python vốn là một dự án sở thích

Vào tháng 12 năm 1989, người sáng tạo ra Python, Guido Van Rossum, đang tìm kiếm một dự án sở thích để giết thời gian rảnh trong tuần lễ Giáng sinh. Anh ấy đã nghĩ đến việc viết một ngôn ngữ kịch bản mới là hậu duệ của ABC và thu hút các hacker của Unix/C. Guido đặt tên cho nó là Python.

2. Tại sao lại có cái tên Python?

Tên của ngôn ngữ này không hề liên quan tới loài rắn cùng tên, mà là về đoàn hài kịch nổi tiếng của Anh – Monty Python (từ những năm 1970). Bản thân Guido là một người hâm mộ lớn của Monty Python’s Flying Circus. Với một tâm trạng ngẫu hứng, anh ấy đã dùng “Python” để đặt tên cho dự án của mình.

Monty Python’s Flying Circus

3. Thiền của Python (Zen of Python)

Zen of Python (Thiền của Python) là một tập hợp gồm 19 “nguyên tắc chỉ dẫn” cho việc viết chương trình máy tính, góp phần ảnh hưởng đến thiết kế của ngôn ngữ Python. Tim Peters là một kỹ sư có đóng góp lớn khi viết bộ các nguyên tắc này và đăng tải lên Python mailing list vào năm 1999. Trong đó, anh đã viết một bài thơ để nêu bật các triết lý của Python. Nếu bạn nhập “import this” trong Python IDLE của mình, bạn sẽ tìm thấy bài thơ sau:

Nguồn: data-flair

4. Ngôn ngữ có nhiều “hương vị”

Sở dĩ nói ngôn ngữ Python có nhiều “hương vị” là bởi nó có thể được triển khai cùng nhiều ngôn ngữ và công cụ khác nhau:

  • CPython: Được viết bằng C, là phiên bản phổ biến nhất của Python
  • Jython: Được viết bằng Java, biên dịch sang bytecode
  • IronPython: Được triển khai trong C#, một layer có khả năng mở rộng cho các frameworks được viết bằng .NET
  • Brython: Trình duyệt Python, chạy trong trình duyệt
  • RubyPython: Cầu nối giữa trình thông dịch Python và Ruby
  • MicroPython- Chạy trên vi điều khiển (microcontroller)

5. Các công ty lớn sử dụng ngôn ngữ Python

Nhiều tên tuổi lớn đang sử dụng (hoặc đã sử dụng) Python cho các sản phẩm/dịch vụ của họ. Có lẽ chính bạn cũng đang dùng những sản phẩm này hàng ngày. Một trong số đó là:

  • NASA
  • Google
  • Nokia
  • IBM
  • Yahoo! Maps
  • Walt Disney Feature Animation
  • Facebook
  • Netflix
  • Expedia
  • Reddit
  • Quora
  • MIT
  • Disqus
  • Hike
  • Spotify
  • Udemy
  • Shutterstock
  • Uber
  • Amazon
  • Mozilla
  • Dropbox
  • Pinterest
  • Youtube

6. Các hàm có thể trả về nhiều giá trị

Trong Python, một hàm có thể trả về nhiều giá trị dưới dạng một bộ giá trị. Hãy xem đoạn code sau:

>>> def func(): 
        return 7, 'Ayushi', 99
>>> roll, name, score = func()
>>> roll, name, score 
(7, 'Ayushi', 99) 
>>> name 
'Ayushi'

Điều này không thể thực hiện được ở một ngôn ngữ như Java. Ở đó, bạn chỉ có thể trả về một mảng giá trị thay thế.

7. Ngôn ngữ Python hỗ trợ nhiều phép gán trong một câu lệnh

Python sẽ cho phép bạn gán cùng một giá trị cho nhiều biến trong một câu lệnh. Nó cũng sẽ cho phép bạn gán giá trị cho nhiều biến cùng một lúc.

Điều này cũng có nghĩa là hoán đổi (swapping) trong Python nhanh hơn và có thể được thực hiện chỉ trong 1 dòng code:

>>> a, b = 7, 8
>>> a, b = b, a
>>> print (a, b)
8 7

8. Với slicing, việc đảo ngược danh sách trở nên dễ dàng hơn

Nếu chúng ta cắt một danh sách các giá trị từ đầu đến cuối nhưng với step là -1, chúng ta nhận được danh sách từ phải sang trái (đảo ngược).

>>> nums = [1, 2, 3, 4, 5, 6, 7, 8, 9] 
>>> nums[::-1]
[9, 8, 7, 6, 5, 4, 3, 2, 1]

9. Bạn có thể so sánh theo chuỗi

Các điều kiện có thể chứa nhiều so sánh cùng một lúc. Bạn có thể có một điều kiện để kiểm tra xem một giá trị có lớn hơn và nhỏ hơn giá trị khác cùng một lúc hay không.

>>> 1 < 2 < 3 < 4
TRUE
>>> 1 < 2 > 1.5

10. String literals được nối với nhau 

Nếu bạn nhập các hằng chuỗi được phân tách bằng dấu cách, Python sẽ nối chúng với nhau. Ví dụ, ‘Hello’ ‘World’ sẽ trở thành ‘HelloWorld’.

>>> 'Hello' 'World' '!'
'HelloWorld!'

11. Phản trọng lực!

Nếu bạn truy cập IDLE và nhập import antigravity, nó sẽ mở ra một trang web có truyện tranh về module phản trọng lực.

12. Python có ảnh hưởng đến JavaScript

Python là một trong 9 ngôn ngữ có ảnh hưởng nhất đến thiết kế của JavaScript. Những ngôn ngữ khác bao gồm AWK, C, HyperTalk, Java, Lua, Perl, Scheme và Self.

13. Vòng lặp for- và while- có thể có các câu lệnh else

Câu lệnh else không bị giới hạn các ở câu lệnh if và try. Nếu bạn thêm khối else sau vòng lặp for- hoặc while-, các câu lệnh bên trong khối else chỉ được thực thi sau khi vòng lặp hoàn thành bình thường. Nếu vòng lặp tạo ra một ngoại lệ hoặc đạt đến một câu lệnh break, thì code bên dưới else không được thực thi. Điều này có thể tốt cho các hoạt động tìm kiếm.

for i in range(5):
    if i == 7:
        print('found')
        break
else:
    print("Not found")

14. _ nhận giá trị của biểu thức cuối cùng

Nhiều người sử dụng IDLE như một máy tính toán. Để nhận giá trị/kết quả của biểu thức cuối cùng, hãy sử dụng dấu gạch dưới.

>>> 2*3+5
11
>>> 7*_
77

15. Mọi người thích Python hơn tiếng Pháp

Theo một cuộc khảo sát, tại Anh vào năm 2015, Python đã vượt qua tiếng Pháp để trở thành ngôn ngữ phổ biến nhất được giảng dạy trong các trường tiểu học. Trong số 10 phụ huynh, 6 người thích con cái họ học Python hơn tiếng Pháp. 

Với 15 sự thật trên đây, bạn có thấy ngôn ngữ lập trình mình vốn sử dụng tưởng chừng khô khan nhưng lại ẩn chứa nhiều điều thú vị không nào? Hy vọng bài viết này đã mang đến cho bạn một góc nhìn mới mẻ về ngôn ngữ Python. Happy coding! 😄

Got It Vietnam – Tham khảo: data-flair.training

Nếu muốn trau dồi kiến thức về Python, bạn có thể tham khảo các tài liệu học tại:

Đọc thêm về quy trình tuyển dụng tại đây.

https://d1iv5z3ivlqga1.cloudfront.net/wp-content/uploads/2021/04/29235048/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
December 14, 2020
Share this post to:
Tags:
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback
12 ứng dụng ngôn ngữ Python (P2) - Blog | Got It AI
3 years ago

[…] ngữ Python và 15 sự thật bạn có thể chưa […]

Các bài viết liên quan
Các bước tạo một thư viện Python

Các bước tạo một thư viện Python

Tác giả: Minh (Software Engineer | CAI) Trong Tech Blog số này, Got It sẽ cùng bạn tìm hiểu về 6 bước để tạo và phân phối một thư viện Python. Cụ thể, chúng ta sẽ viết một CLI command tương tự cowsay cùng với một function để các package khác có thể import và […]
Sử dụng pre-commit để thực thi PEP8 chỉ trong 3 bước

Sử dụng pre-commit để thực thi PEP8 chỉ trong 3 bước

Tác giả: Kiên (Software Engineer | CAI) Đảm bảo code tuân thủ đầy đủ các quy tắc được đề xuất trong PEP8 là một điều vô cùng quan trọng, đặc biệt là trong làm việc nhóm, khi mà yếu tố dễ đọc, dễ hiểu, và dễ bảo trì code được đặt lên hàng đầu. Dẫu […]
Hướng dẫn cách triển khai và debug code Python trên Docker

Hướng dẫn cách triển khai và debug code Python trên Docker

Tác giả: Kiên (Software Engineer | CAI) Bạn đã bao giờ mất hàng tiếng đồng hồ, thậm chí vài ngày để cài đặt một số thư viện cần thiết cho việc chạy một project trên máy tính của mình chưa? Nếu có thì đây là bài viết dành cho bạn. Thông thường, khi bạn tham […]
Readable Code

Readable Code

Tác giả: Minh (Software Engineer, CAI) & Hương (TPM, CAI) Mục lục1. Readable code là gì?2. Làm thế nào để viết code dễ đọc?2.1. Style guide2.2. Viết function nhỏ, tập trung vào một tính năng2.3. Đặt tên hợp lý2.3.1. Dùng các tiền tố thích hợp để phân loại function2.3.2. Hạn chế thêm thông tin về […]
Tìm hiểu Tuple trong Python, phân biệt Tuple và List

Tìm hiểu Tuple trong Python, phân biệt Tuple và List

Ở bài viết này, chúng ta sẽ cùng đi tìm hiểu về Tuple trong Python, cách sử dụng chúng như thế nào, và sự khác biệt giữa Tuple và List là gì? Tất cả những nội dung trong bài đọc sẽ đều có ví dụ minh hoạ cụ thể, hi vọng các bạn đọc có […]
Anaconda là gì? Tìm hiểu nền tảng Khoa học dữ liệu phổ biến nhất

Anaconda là gì? Tìm hiểu nền tảng Khoa học dữ liệu phổ biến nhất

Để có thể tạo nên một ứng dụng của riêng mình, điều quan trọng nhất đó là phải thiết lập môi trường làm việc đúng cách. Vì vậy, bạn cần các công cụ để xử lý dữ liệu, xây dựng các mô hình và biểu diễn trên đồ thị. Việc sử dụng nhiều công cụ […]