12 thư viện Python mà ai cũng nên biết
Danh sách hiệu quả và hữu ích của các thư viện python
Có một số thư viện ẩn của python mà ít người biết. Những thư viện này thực sự ấn tượng để cải thiện năng suất hàng ngày của bạn.
1- Bắt đầu
cài đặt pip bắt đầu
Theo như giao diện người dùng, hầu hết các chương trình Python bắt đầu dưới dạng
ứng dụng dòng lệnh và nhiều chương trình vẫn như vậy. Bạn nên
cung cấp cho người dùng của mình trải nghiệm tốt nhất có thể. Đối với các chương trình như vậy, các tùy chọn được chỉ định bằng các đối số dòng lệnh và
thư viện chuẩn Python cung cấp thư viện argparse để trợ giúp điều đó.
argparse là một triển khai mạnh mẽ, chắc chắn để xử lý dòng lệnh
, nhưng nó hơi dài dòng để sử dụng. Ví dụ, ở đây chúng ta
có một tập lệnh cực kỳ đơn giản sẽ cộng hai số được truyền
trên dòng lệnh:
import begin
@begin.start(auto_convert=True)
def main(a: 'First value' = 0.0, b: 'Second value' = 0.0):
""" Add two numbers """
print(a + b)
pip cài đặt colorama
Nhiều chương trình Python trên máy tính để bàn của bạn sẽ chỉ được sử dụng trên
dòng lệnh, vì vậy bạn nên làm bất cứ điều gì có thể để
cải thiện trải nghiệm của người dùng nhiều nhất có thể. Việc sử dụng
màu sắc có thể cải thiện đáng kể giao diện người dùng của bạn và colorama
giúp bạn dễ dàng thêm các vệt màu vào
các ứng dụng dòng lệnh của mình.
from colorama import init, Fore, Back, Style
init(autoreset=True)
messages = ['blah blah blah',(Fore.LIGHTYELLOW_EX + Style.BRIGHT
+ BACK.MAGENTA + 'Alert!!!'),'blah blah blah']
for m in messages:
print(m)
pip cài đặt pyqtgraph
python -m pyqtgraph.examples
Thư viện vẽ biểu đồ phổ biến nhất trong Python là matplotlib, nhưng
bạn có thể chưa nghe nói về sự thay thế tuyệt vời, pyqtgraph.
Pyqtgraph không phải là sự thay thế trực tiếp cho matplotlib; thay vào đó, nó
cung cấp nhiều lựa chọn tính năng khác nhau và đặc biệt là tuyệt vời
cho trực quan hóa thời gian thực và tương tác.
4. pywebview
Pywebview cung cấp cho bạn lệnh một dòng để
tạo cửa sổ GUI bao bọc cửa sổ “chế độ xem web” gốc của hệ thống.
Bằng cách kết hợp điều này với một ứng dụng web Python như Flask hoặc Chai, việc
tạo một ứng dụng cục bộ bằng GUI trở nên rất dễ dàng, đồng thời
tận dụng các công nghệ GUI mới nhất đã được
phát triển trong không gian trình duyệt. Lợi ích khi sử dụng
tiện ích trình duyệt gốc của hệ thống là bạn không phải phân phối một gói ứng dụng lớn tiềm năng cho người dùng của mình.
5. psutil
Psutil cung cấp quyền truy cập đầy đủ vào thông tin hệ thống. Đây là một
ví dụ đơn giản về báo cáo cơ bản cho tải CPU được lấy mẫu trong 5 giây:
import psutil
cpu = psutil.cpu_percent(interval=5, percpu=True)
print(cpu)
Watchdog là một thư viện đa nền tảng, chất lượng cao để nhận thông báo về các thay đổi trong hệ thống tệp. Các thông báo hệ thống tệp như vậy
là một yêu cầu cơ bản trong nhiều ứng dụng tự động hóa và
Watchdog xử lý tất cả các chi tiết cấp thấp và đa nền tảng của
thông báo cho các sự kiện hệ thống. Và, điều tuyệt vời về Watchdog
là nó không sử dụng tính năng bỏ phiếu
7. ptpython
ptpython là một giao diện thông dịch viên thay thế, cung cấp
trải nghiệm Python tương tác đẹp mắt. Như vậy, ptpython giống một công cụ
hơn là một thư viện để đưa vào các dự án của riêng bạn, nhưng thật là một công cụ! với giao diện cơ bản
8. mũi tên
Mặc dù các ý kiến khác nhau, nhưng vẫn có những người thấy mô-đun datetime của thư viện chuẩn khó sử dụng. Bản thân tài liệu mô-đun trong một vài đoạn đầu tiên giải thích lý do: nó cung cấp
cả đối tượng ngây thơ và nhận biết để biểu thị ngày và giờ. Những người ngây thơ
là nguồn gốc của sự nhầm lẫn, bởi vì các nhà phát triển ứng dụng
ngày càng thấy mình đang làm việc trên các dự án trong đó
các múi giờ cực kỳ quan trọng. Sự gia tăng đáng kể của cơ sở hạ tầng đám mây và các ứng dụng phần mềm dưới dạng dịch vụ đã góp phần tạo nên thực
tế là ứng dụng của bạn sẽ thường xuyên chạy ở múi giờ khác
(ví dụ: trên máy chủ) so với vị trí của các nhà phát triển và lại khác với vị trí của các nhà phát triển. người dùng của bạn được định vị.
import arrow
t0 = arrow.now()
print(t0)
t1 = arrow.utcnow()
print(t1)
difference = (t0 - t1).total_seconds()
print('Total difference: %.2f seconds' % difference)
parsedatetime là một thư viện tuyệt vời với trọng tâm chuyên biệt: phân tích cú pháp văn bản thành ngày và giờ. Như bạn mong đợi, nó có thể thu được
bằng pip install parsedatetime. Tài liệu chính thức
rất giống API, điều này khiến cho việc có được cái
nhìn tổng quan nhanh về những gì thư viện cung cấp trở nên khó khăn hơn bình thường, nhưng bạn có thể biết khá rõ
về những gì có sẵn bằng cách duyệt qua bộ thử nghiệm mở rộng.
import parsedatetime as pdt
cal = pdt.Calendar()
examples = [
"2016-07-16",
"2016/07/16",
"2016-7-16",
"2016/7/16",
"07-16-2016",
"7-16-2016",
"7-16-16",
"7/16/16",
]
print('{:30s}{:>30s}'.format('Input', 'Result'))
print('=' * 60)
for e in examples:
dt, result = cal.parseDT(e)
print('{:<30s}{:>30}'.format('"' + e + '"', dt.ctime()))
Ngày càng có nhiều mối quan tâm đến việc tạo bot và các ứng dụng giám sát và tự động hóa khác. Đối với các ứng dụng này, một yêu cầu chung là thực hiện các hành động tại các thời điểm hoặc
khoảng thời gian xác định. Chức năng này được cung cấp bởi mô-đun lập lịch trong thư viện chuẩn. Đã có các công cụ tương tự được cung cấp
bởi các hệ điều hành, chẳng hạn như cron trên Linux và Windows Task
Scheduler, nhưng với mô-đun lập lịch riêng của Python, bạn có thể bỏ qua
những khác biệt về nền tảng này, cũng như kết hợp các tác vụ đã lên lịch
vào một chương trình có thể có nhiều chức năng khác.
import sched
import time
from datetime import datetime, timedelta
scheduler = sched.scheduler(timefunc=time.time)
def saytime():
print(time.ctime())
scheduler.enter(10, priority=0, action=saytime)
saytime()
try:
scheduler.run(blocking=True)
except KeyboardInterrupt:
print('Stopped.')
cài đặt pip
flit là một công cụ giúp đơn giản hóa đáng kể quy trình gửi
gói Python tới Chỉ mục gói Python (PyPI). Quy trình truyền thống
bắt đầu bằng cách tạo tệp setup.py; chỉ đơn giản là tìm ra cách
để làm điều đó đòi hỏi một khối lượng công việc đáng kể thậm chí để hiểu
phải làm gì. Ngược lại, flit sẽ tạo tệp cấu hình của nó một cách tương tác và đối với các gói đơn giản điển hình, bạn sẽ sẵn sàng tải lên
PyPI gần như ngay lập tức.
12. Nhà Bolton
Thư viện boltons là một bộ sưu tập các mô-đun Python
có mục đích chung bao gồm nhiều tình huống mà bạn có thể gặp phải. Thư
viện được duy trì tốt và có chất lượng cao; nó rất đáng để thêm vào
bộ công cụ của bạn.
12. Cython
Cython là một công cụ kỳ diệu! Như với hầu hết các thiết bị ma thuật, rất khó
để mô tả chính xác nó là gì. Cython là công cụ chuyển đổi mã nguồn Python thành mã nguồn C; mã mới này sau đó được biên dịch thành
tệp nhị phân gốc được liên kết với thời gian chạy CPython.
13. tuyệt vời-trăn
Cuối cùng, chúng ta có awesome-python. Đây không phải là một thư viện, mà là một
danh sách khổng lồ, được tuyển chọn gồm các thư viện Python chất lượng cao bao gồm một
số lượng lớn các miền. Nếu bạn chưa xem danh sách này trước đây, hãy đảm bảo
dành thời gian trước khi duyệt vì một khi bạn bắt đầu, bạn sẽ
khó có thể xé toạc bản thân!

![Dù sao thì một danh sách được liên kết là gì? [Phần 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































