Trong python, tên tệp mô-đun phải kết thúc bằng

Chuyển đến nội dung chính

Giới thiệu về Python

Nắm vững kiến ​​thức cơ bản về phân tích dữ liệu với Python chỉ trong bốn giờ. Khóa học trực tuyến này sẽ giới thiệu giao diện Python và khám phá các gói phổ biến

Python trung cấp

Nâng cao kỹ năng khoa học dữ liệu của bạn bằng cách tạo trực quan hóa bằng Matplotlib và thao tác với DataFrames bằng gấu trúc

Có liên quan

SQL so với Python. Bạn nên học cái nào?

Trong bài viết này, chúng tôi sẽ đề cập đến các tính năng chính của Python và SQL, những điểm tương đồng và khác biệt chính của chúng cũng như bạn nên chọn cái nào trước để bắt đầu hành trình khoa học dữ liệu của mình

Javier Canales Luna •

12 phút

Dữ liệu văn bản trong Python Cheat Sheet

Chào mừng bạn đến với bảng gian lận của chúng tôi để làm việc với dữ liệu văn bản trong Python. Chúng tôi đã biên soạn một danh sách các hàm và gói hữu ích nhất để dọn dẹp, xử lý và phân tích dữ liệu văn bản trong Python, cùng với các ví dụ và giải thích rõ ràng, vì vậy bạn sẽ có mọi thứ cần biết về cách làm việc với dữ liệu văn bản trong Python.

Hướng dẫn về tập hợp và lý thuyết tập hợp trong Python

Tìm hiểu về bộ Python. chúng là gì, cách tạo chúng, khi nào sử dụng chúng, các chức năng tích hợp và mối quan hệ của chúng với các hoạt động lý thuyết thiết lập

Hướng dẫn về gấu trúc. Khung dữ liệu trong Python

Khám phá phân tích dữ liệu với Python. Pandas DataFrames giúp thao tác dữ liệu của bạn dễ dàng, từ việc chọn hoặc thay thế các cột và chỉ mục để định hình lại dữ liệu của bạn

Xem ThêmXem Thêm

Bạn có thể đã gặp thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 của Python khi đọc mã của người khác. Không có gì ngạc nhiên khi nó phổ biến rộng rãi. Bạn thậm chí có thể đã sử dụng
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 trong tập lệnh của riêng mình. Nhưng liệu bạn đã sử dụng đúng cách?

Có thể bạn đã từng lập trình bằng ngôn ngữ họ C như Java trước đây và bạn tự hỏi liệu cấu trúc này có phải là một phụ kiện vụng về khi sử dụng hàm

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 làm điểm vào hay không

Về mặt cú pháp, thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 của Python chỉ là một khối điều kiện thông thường

 1if __name__ == "__main__":
 2    ...

Khối thụt lề bắt đầu từ dòng 2 chứa tất cả mã mà Python sẽ thực thi khi câu lệnh điều kiện ở dòng 1 ước tính thành

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
7. Trong ví dụ mã ở trên, logic mã cụ thể mà bạn đã đặt trong khối điều kiện được biểu thị bằng dấu chấm lửng giữ chỗ [_______08]

Vì vậy—nếu không có gì đặc biệt về thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3, thì tại sao nó lại có vẻ khó hiểu và tại sao nó tiếp tục gây ra cuộc thảo luận trong cộng đồng Python?

Nếu thành ngữ vẫn có vẻ hơi khó hiểu và bạn không hoàn toàn chắc chắn về tác dụng của nó, tại sao bạn có thể muốn nó và khi nào nên sử dụng nó, thì bạn đã đến đúng nơi. Trong hướng dẫn này, bạn sẽ tìm hiểu tất cả về thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 của Python—bắt đầu với những gì nó thực sự làm trong Python và kết thúc bằng một gợi ý về cách tham khảo nó nhanh hơn

Mã nguồn. Nhấp vào đây để tải xuống mã nguồn miễn phí mà bạn sẽ sử dụng để hiểu thành ngữ tên-chính

Nói ngắn gọn. Nó cho phép bạn thực thi mã khi tệp chạy dưới dạng tập lệnh, nhưng không phải khi nó được nhập dưới dạng mô-đun

Đối với hầu hết các mục đích thực tế, bạn có thể coi khối điều kiện mà bạn mở bằng

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 như một cách để lưu trữ mã chỉ chạy khi tệp của bạn được thực thi dưới dạng tập lệnh

Bạn sẽ thấy điều đó có nghĩa là gì trong giây lát. Hiện tại, giả sử bạn có tệp sau

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
0

Trong ví dụ này, bạn định nghĩa một hàm,

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
12, mô phỏng tiếng vang trong thế giới thực bằng cách in dần dần các chữ cái cuối cùng của văn bản đầu vào

Dưới đó, từ dòng 10 đến 12, bạn sử dụng thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3. Mã này bắt đầu bằng câu lệnh điều kiện
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 ở dòng 10. Trong các dòng thụt vào, 11 và 12, sau đó bạn thu thập đầu vào của người dùng và gọi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
12 bằng đầu vào đó. Hai dòng này sẽ thực thi khi bạn chạy
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
16 dưới dạng tập lệnh từ dòng lệnh của bạn

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.

Khi bạn chạy tệp dưới dạng tập lệnh bằng cách chuyển đối tượng tệp tới trình thông dịch Python của mình, biểu thức

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
17 trả về
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
7. Sau đó, khối mã bên dưới
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
19 sẽ chạy, vì vậy Python thu thập đầu vào của người dùng và gọi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
12

Hãy tự mình thử. Bạn có thể tải xuống tất cả các tệp mã mà bạn sẽ sử dụng trong hướng dẫn này từ liên kết bên dưới

Mã nguồn. Nhấp vào đây để tải xuống mã nguồn miễn phí mà bạn sẽ sử dụng để hiểu thành ngữ tên-chính

Đồng thời, nếu bạn nhập

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
12 vào một mô-đun khác hoặc phiên bảng điều khiển, thì mã lồng nhau sẽ không chạy

>>>

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
1

Trong trường hợp này, bạn muốn sử dụng

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
12 trong ngữ cảnh của một tập lệnh hoặc phiên thông dịch khác, vì vậy bạn sẽ không cần thu thập thông tin đầu vào của người dùng. Chạy
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 sẽ gây rối với mã của bạn bằng cách tạo ra tác dụng phụ khi nhập
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44

Khi bạn lồng mã dành riêng cho việc sử dụng tập lệnh của tệp của bạn dưới thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3, thì bạn sẽ tránh chạy mã không liên quan cho các mô-đun đã nhập

Mã lồng bên dưới

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 cho phép bạn phục vụ cho các trường hợp sử dụng khác nhau

  • Kịch bản. Khi chạy dưới dạng tập lệnh, mã của bạn sẽ nhắc người dùng nhập liệu, gọi
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    12 và in kết quả
  • mô-đun. Khi bạn nhập
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    44 làm mô-đun, thì
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    12 được xác định nhưng không có mã nào thực thi. Bạn cung cấp
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    12 cho phiên mã chính mà không có bất kỳ tác dụng phụ nào

Bằng cách triển khai thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 trong mã của bạn, bạn đã thiết lập một điểm nhập bổ sung cho phép bạn sử dụng
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
12 ngay từ dòng lệnh

của bạn đi. Bây giờ bạn đã bao gồm các thông tin quan trọng nhất về chủ đề này. Tuy nhiên, vẫn còn nhiều điều cần tìm hiểu và có một số điểm tinh tế có thể giúp bạn hiểu sâu hơn về mã này nói riêng và Python nói chung

Đọc tiếp để tìm hiểu thêm về thành ngữ tên-chính, vì hướng dẫn này sẽ đề cập đến nó một cách ngắn gọn

Loại bỏ các quảng cáo

Thành ngữ tên-chính hoạt động như thế nào?

Về cốt lõi, thành ngữ này là một câu lệnh có điều kiện kiểm tra xem giá trị của biến

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 có bằng chuỗi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44 hay không

  • Nếu biểu thức
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    17 là
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    7, thì đoạn mã thụt vào sau câu lệnh điều kiện sẽ thực thi
  • Nếu biểu thức
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    17 là
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    48, thì Python sẽ bỏ qua mã thụt lề

Nhưng khi nào thì

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 bằng chuỗi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44? . Mặc dù điều đó bao gồm hầu hết các trường hợp sử dụng thực tế, nhưng có thể bạn muốn tìm hiểu sâu hơn

Python đặt

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 toàn cầu của một mô-đun bằng
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44 nếu trình thông dịch Python chạy mã của bạn trong môi trường mã cấp cao nhất

“Mã cấp cao nhất” là mô-đun Python do người dùng chỉ định đầu tiên bắt đầu chạy. Đó là "cấp cao nhất" vì nó nhập tất cả các mô-đun khác mà chương trình cần. [Nguồn]

Để hiểu rõ hơn điều đó có nghĩa là gì, bạn sẽ thiết lập một ví dụ thực tế nhỏ. Tạo một tệp Python, gọi nó là

 1if __name__ == "__main__":
 2    ...
43 và thêm một dòng mã

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
4

Tệp mới của bạn chỉ chứa một dòng mã in giá trị và loại của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 toàn cầu vào bảng điều khiển

Khởi động thiết bị đầu cuối của bạn và chạy tệp Python dưới dạng tập lệnh

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
4

Đầu ra cho bạn thấy rằng giá trị của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 là chuỗi Python
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44 nếu bạn chạy tệp của mình dưới dạng tập lệnh

Ghi chú. Trong môi trường mã cấp cao nhất, giá trị của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 luôn là
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44. Môi trường mã cấp cao nhất thường là một mô-đun mà bạn chuyển tới trình thông dịch Python dưới dạng đối số tệp, như bạn đã thấy ở trên. Tuy nhiên, có các tùy chọn khác có thể cấu thành môi trường mã cấp cao nhất

  • Phạm vi của lời nhắc tương tác
  • Gói hoặc mô-đun Python được chuyển tới trình thông dịch Python với tùy chọn
     1if __name__ == "__main__":
     2    ...
    
    49, viết tắt của mô-đun
  • Mã Python được trình thông dịch Python đọc từ đầu vào tiêu chuẩn
  • Mã Python được chuyển tới trình thông dịch Python với tùy chọn
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    30, viết tắt của lệnh

Nếu bạn tò mò muốn tìm hiểu thêm về các tùy chọn này, thì hãy xem tài liệu Python về môi trường mã cấp cao nhất là gì. Tài liệu minh họa từng gạch đầu dòng này bằng một đoạn mã ngắn gọn

Bây giờ bạn đã biết giá trị của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 khi mã của bạn được thực thi trong môi trường mã cấp cao nhất

Nhưng một câu điều kiện chỉ có thể tạo ra các kết quả khác nhau khi điều kiện có cơ hội đánh giá theo những cách khác nhau. Vì vậy, khi nào mã của bạn không chạy trong môi trường mã cấp cao nhất và điều gì sẽ xảy ra với giá trị của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 trong trường hợp đó?

Mã trong tệp của bạn không chạy trong môi trường mã cấp cao nhất nếu bạn nhập mô-đun của mình. Trong trường hợp đó, Python đặt

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 thành tên của mô-đun

Để dùng thử, hãy khởi động bảng điều khiển Python và nhập mã từ

 1if __name__ == "__main__":
 2    ...
43 dưới dạng mô-đun

>>>

 1if __name__ == "__main__":
 2    ...
4

Python thực thi mã được lưu trữ trong không gian tên chung của

 1if __name__ == "__main__":
 2    ...
43 trong quá trình nhập, có nghĩa là nó sẽ gọi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
36 và ghi đầu ra vào bảng điều khiển

Tuy nhiên, trong trường hợp này, giá trị của mô-đun

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 là khác. Nó trỏ tới
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
38, một chuỗi bằng với tên của mô-đun

Ghi chú. Bạn có thể nhập bất kỳ tệp nào chứa mã Python dưới dạng mô-đun và Python sẽ chạy mã trong tệp của bạn trong quá trình nhập. Tên của mô-đun thường sẽ là tên tệp không có phần mở rộng tệp đối với tệp Python [

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
39]

Bạn vừa biết rằng đối với môi trường mã cấp cao nhất của mình,

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 luôn là
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44, vì vậy hãy tiếp tục và xác nhận điều đó trong phiên phiên dịch của bạn. Đồng thời kiểm tra xem chuỗi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
38 đến từ đâu

>>>

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3

Toàn cầu

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 có giá trị
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44 và
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
05 cho mô-đun
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
06 đã nhập có giá trị
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
38, là tên của mô-đun dưới dạng chuỗi

Ghi chú. Hầu hết thời gian, môi trường mã cấp cao nhất sẽ là tập lệnh Python mà bạn thực thi và là nơi bạn nhập các mô-đun khác. Tuy nhiên, trong ví dụ này, bạn có thể thấy rằng môi trường mã cấp cao nhất không bị ràng buộc chặt chẽ với việc chạy tập lệnh và cũng có thể là phiên thông dịch chẳng hạn

Bây giờ bạn biết rằng giá trị của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 sẽ có một trong hai giá trị tùy thuộc vào vị trí của nó

  • Trong môi trường mã cấp cao nhất, giá trị của
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    43 là
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    44
  • Trong mô-đun đã nhập, giá trị của
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    43 là tên của mô-đun dưới dạng chuỗi

Vì Python tuân theo các quy tắc này nên bạn có thể tìm hiểu xem một mô-đun có đang chạy trong môi trường mã cấp cao nhất hay không. Bạn làm điều này bằng cách kiểm tra giá trị của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 với một câu lệnh có điều kiện, câu lệnh này đưa bạn đến vòng tròn đầy đủ của thành ngữ tên-chính

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
0

Với việc kiểm tra có điều kiện này, bạn có thể khai báo mã chỉ thực thi khi mô-đun được chạy trong môi trường mã cấp cao nhất

Thêm thành ngữ vào

 1if __name__ == "__main__":
 2    ...
43 như được hiển thị trong khối mã ở trên, sau đó chạy lại tệp dưới dạng tập lệnh

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
0

Khi chạy mã của bạn dưới dạng tập lệnh, cả hai lệnh gọi tới

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
04 đều thực thi

Tiếp theo, bắt đầu phiên phiên dịch mới và nhập lại

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
06 dưới dạng mô-đun

>>>

 1if __name__ == "__main__":
 2    ...
4

Khi bạn nhập tệp của mình dưới dạng một mô-đun, mã mà bạn đã lồng trong

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 không thực thi

Bây giờ bạn đã biết cách thức hoạt động của thành ngữ name-main trong Python, bạn có thể tự hỏi mình nên sử dụng nó chính xác khi nào và như thế nào trong mã của mình—và khi nào nên tránh sử dụng nó

Loại bỏ các quảng cáo

Khi nào bạn nên sử dụng thành ngữ tên-chính trong Python?

Bạn sử dụng thành ngữ này khi bạn muốn tạo một điểm nhập bổ sung cho tập lệnh của mình để tệp của bạn có thể truy cập được dưới dạng tập lệnh độc lập cũng như mô-đun có thể nhập được. Bạn có thể muốn điều đó khi tập lệnh của bạn cần thu thập đầu vào của người dùng

Trong phần đầu tiên của hướng dẫn này, bạn đã sử dụng tên-chính thành ngữ cùng với

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 để thu thập thông tin đầu vào của người dùng khi chạy
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
16 dưới dạng tập lệnh. Đó là một lý do tuyệt vời để sử dụng thành ngữ tên-chính

Ngoài ra còn có các cách khác để thu thập đầu vào của người dùng trực tiếp từ dòng lệnh. Ví dụ: bạn có thể tạo một điểm nhập dòng lệnh cho một tập lệnh Python nhỏ với

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
09 và thành ngữ tên-chính

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
01

Thay vì thu thập thông tin đầu vào của người dùng bằng

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43, bạn đã thay đổi mã trong
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
16 để người dùng của bạn có thể cung cấp văn bản dưới dạng đối số trực tiếp từ dòng lệnh

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
02

Python thu thập một số lượng từ tùy ý vào

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
09, đây là danh sách các chuỗi đại diện cho tất cả các đầu vào. Mỗi từ được coi là một đối số mới khi một ký tự khoảng trắng ngăn cách nó với các từ khác

Bằng cách thực thi mã xử lý đầu vào của người dùng và lồng nó vào tên-chính thành ngữ, bạn cung cấp một điểm nhập bổ sung cho tập lệnh của mình

Nếu bạn muốn tạo một điểm vào cho một gói, thì bạn nên tạo một tệp

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
003 dành riêng cho mục đích đó. Tệp này đại diện cho một điểm vào mà Python gọi khi bạn chạy gói của mình bằng tùy chọn
 1if __name__ == "__main__":
 2    ...
49

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
03

Khi bạn tạo một môi trường ảo bằng cách sử dụng mô-đun

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
005, như được hiển thị ở trên, sau đó bạn chạy mã được xác định trong tệp
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
003. Tùy chọn
 1if __name__ == "__main__":
 2    ...
49 theo sau là tên mô-đun
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
005 gọi
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
003 từ mô-đun
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
005

Bởi vì

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
005 là một gói chứ không phải là một tập lệnh giao diện dòng lệnh [CLI] nhỏ, nên nó có một tệp
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
003 chuyên dụng làm điểm vào

Ghi chú. Có những ưu điểm bổ sung của mã lồng nhau, chẳng hạn như bộ sưu tập đầu vào của người dùng, dưới thành ngữ tên-chính. Vì mã lồng nhau đó không thực thi trong quá trình nhập mô-đun nên bạn có thể chạy thử nghiệm đơn vị từ một mô-đun thử nghiệm riêng biệt trên các chức năng của mình mà không tạo ra tác dụng phụ

Mặt khác, các tác dụng phụ có thể xảy ra do mô-đun thử nghiệm cần nhập mô-đun của bạn để chạy thử nghiệm đối với mã của bạn

Trong tự nhiên, bạn có thể gặp nhiều lý do khác để sử dụng thành ngữ tên-chính trong mã Python. Tuy nhiên, việc thu thập đầu vào của người dùng, thông qua đầu vào tiêu chuẩn hoặc dòng lệnh, là lý do chính được đề xuất để sử dụng nó

Khi nào bạn nên tránh tên-chính thành ngữ?

Bây giờ bạn đã biết khi nào nên sử dụng thành ngữ tên-chính, đã đến lúc tìm hiểu khi nào sử dụng nó không phải là ý tưởng tốt nhất. Bạn có thể ngạc nhiên khi biết rằng trong nhiều trường hợp, có nhiều lựa chọn tốt hơn là lồng mã của bạn vào bên dưới

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 trong Python

Đôi khi, các nhà phát triển sử dụng thành ngữ tên-chính để thêm các lần chạy thử vào tập lệnh kết hợp chức năng mã và kiểm tra trong cùng một tệp

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
04

Với thiết lập này, bạn có thể chạy thử nghiệm đối với mã của mình khi bạn thực thi mã dưới dạng tập lệnh

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
05

Vì bạn đã chạy tệp dưới dạng tập lệnh, nên

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
43 bằng với
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44, biểu thức điều kiện trả về
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
7 và Python được gọi là
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
017. Bộ thử nghiệm nhỏ đã chạy và thử nghiệm của bạn đã thành công

Đồng thời, bạn không tạo bất kỳ thực thi mã không mong muốn nào khi nhập mã của mình dưới dạng mô-đun

>>>

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
06

Vẫn có thể nhập mô-đun và sử dụng chức năng mà bạn đã xác định ở đó. Bài kiểm tra đơn vị sẽ không chạy trừ khi bạn thực thi mô-đun trong môi trường mã cấp cao nhất

Mặc dù điều này hoạt động đối với các tệp nhỏ, nhưng nó thường không được coi là phương pháp hay. Không nên trộn lẫn các bài kiểm tra và mã trong cùng một tệp. Thay vào đó, hãy viết các bài kiểm tra của bạn trong một tệp riêng. Làm theo lời khuyên này thường tạo ra một cơ sở mã có tổ chức hơn. Cách tiếp cận này cũng loại bỏ bất kỳ chi phí nào, chẳng hạn như nhu cầu nhập

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
018 vào tệp tập lệnh chính của bạn

Một lý do khác mà một số lập trình viên sử dụng thành ngữ tên-chính là để bao gồm một minh họa về những gì mã của họ có thể làm.

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
07

Một lần nữa, người dùng của bạn vẫn có thể nhập mô-đun mà không có bất kỳ tác dụng phụ nào. Ngoài ra, khi họ chạy

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
019 dưới dạng tập lệnh, họ sẽ xem qua chức năng của nó

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
08

Bạn có thể tìm thấy cách thực thi mã demo như vậy trong thành ngữ name-main, nhưng có thể cho rằng có nhiều cách tốt hơn để minh họa cách sử dụng chương trình của bạn. Bạn có thể viết các chuỗi tài liệu chi tiết với các lần chạy ví dụ có thể tăng gấp đôi dưới dạng tài liệu và bạn có thể soạn tài liệu phù hợp cho dự án của mình

Hai ví dụ trước đề cập đến hai trường hợp sử dụng dưới mức tối ưu phổ biến của tên-chính thành ngữ. Ngoài ra còn có các tình huống khác khi tốt nhất nên tránh thành ngữ tên-chính trong Python

  • Một kịch bản thuần túy. Nếu bạn viết một tập lệnh để chạy dưới dạng tập lệnh, thì bạn có thể đặt phần thực thi mã của mình vào không gian tên chung mà không cần lồng nó vào thành ngữ tên-chính. Bạn có thể sử dụng Python làm ngôn ngữ kịch bản vì nó không bắt buộc các mẫu hướng đối tượng mạnh. Bạn không cần phải dính vào các mẫu thiết kế từ các ngôn ngữ khác khi lập trình bằng Python

  • Một chương trình dòng lệnh phức tạp. Nếu bạn viết một ứng dụng dòng lệnh lớn hơn, thì tốt nhất bạn nên tạo một tệp riêng làm điểm vào của mình. Sau đó, bạn nhập mã từ mô-đun của mình vào đó thay vì xử lý đầu vào của người dùng bằng thành ngữ tên-chính. Đối với các chương trình dòng lệnh phức tạp hơn, bạn cũng sẽ được hưởng lợi từ việc sử dụng mô-đun

    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    020 tích hợp sẵn thay vì
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    09

Có thể bạn đã từng sử dụng thành ngữ tên-chính cho một trong những mục đích dưới mức tối ưu này trước đây. Nếu bạn muốn tìm hiểu thêm về cách viết Python thành ngữ hơn cho từng tình huống này, hãy theo các liên kết được cung cấp

❌ Trường hợp sử dụng dưới mức tối ưu✅ Thay thế tốt hơn Thực thi mã kiểm traTạo mô-đun thử nghiệm chuyên dụngTrình diễn mãXây dựng tài liệu dự án và bao gồm các ví dụ trong chuỗi tài liệu của bạnTạo tập lệnh thuần túyChạy dưới dạng tập lệnhCung cấp điểm nhập chương trình CLI phức tạpTạo mô-đun CLI chuyên dụng

Mặc dù bây giờ bạn đã biết khi nào nên tránh thành ngữ tên chính, nhưng bạn vẫn có thể thắc mắc về cách sử dụng nó tốt nhất trong một tình huống hợp lệ

Loại bỏ các quảng cáo

Theo cách nào bạn nên bao gồm tên-chính thành ngữ?

Thành ngữ tên-chính trong Python chỉ là một câu lệnh có điều kiện, vì vậy bạn có thể sử dụng nó ở bất cứ đâu trong tệp của mình—thậm chí nhiều hơn một lần. Tuy nhiên, đối với hầu hết các trường hợp sử dụng, bạn sẽ đặt một thành ngữ tên-chính ở cuối tập lệnh của mình

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
09

Bạn đặt thành ngữ tên chính ở cuối tập lệnh của mình vì điểm nhập cho tập lệnh Python luôn ở đầu tệp. Nếu bạn đặt thành ngữ tên chính ở cuối tệp của mình, thì tất cả các hàm và lớp của bạn sẽ được xác định trước khi Python đánh giá biểu thức điều kiện

Ghi chú. Trong Python, mã trong thân hàm hoặc lớp không chạy trong khi định nghĩa. Mã đó chỉ thực thi khi bạn gọi một hàm hoặc khởi tạo một lớp

Tuy nhiên, mặc dù việc sử dụng nhiều hơn một thành ngữ tên-chính trong một kịch bản là không phổ biến, nhưng trong một số trường hợp, có thể có lý do để làm như vậy. Tài liệu hướng dẫn phong cách Python, PEP8, rõ ràng về nơi đặt tất cả các câu lệnh nhập của bạn

Các mục nhập luôn được đặt ở đầu tệp, ngay sau bất kỳ nhận xét và chuỗi tài liệu nào của mô-đun cũng như trước các hằng số và toàn cầu của mô-đun. [Nguồn]

Đây là lý do tại sao bạn đã nhập

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
022 ở đầu tệp trong
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
16

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
0

Tuy nhiên, bạn thậm chí không cần nhập

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
022 khi bạn chỉ muốn nhập
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44 dưới dạng mô-đun

Để giải quyết vấn đề này mà vẫn tuân thủ các đề xuất về kiểu dáng được xác định trong PEP 8, bạn có thể sử dụng thành ngữ tên-chính thứ hai. Bằng cách lồng phần nhập của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
022 vào một thành ngữ tên-chính, bạn có thể giữ tất cả các phần nhập ở đầu tệp nhưng tránh nhập
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
022 khi bạn không cần sử dụng nó

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
1

Bạn đã lồng việc nhập

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
022 dưới một thành ngữ tên-chính khác. Bằng cách đó, bạn giữ câu lệnh nhập ở đầu tệp của mình, nhưng tránh nhập
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
022 khi bạn sử dụng
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
44 làm mô-đun

Ghi chú. Bạn có thể sẽ không gặp thiết lập này thường xuyên, nhưng đây là ví dụ về thời điểm có thể hữu ích khi sử dụng nhiều thành ngữ tên-chính trong một tệp

Tuy nhiên, khả năng đọc vẫn được tính, vì vậy việc giữ câu lệnh nhập ở đầu mà không có thành ngữ tên-chính thứ hai thường sẽ là lựa chọn tốt hơn. Tuy nhiên, thành ngữ tên-chính thứ hai có thể hữu ích nếu bạn đang làm việc trong môi trường có nguồn lực hạn chế

Như bạn đã học trước đó trong hướng dẫn, có ít cơ hội sử dụng thành ngữ tên-chính hơn bạn tưởng. Đối với hầu hết các trường hợp sử dụng đó, đặt một trong các kiểm tra có điều kiện này ở cuối tập lệnh sẽ là lựa chọn tốt nhất của bạn

Cuối cùng, bạn có thể tự hỏi mã nào nên đi vào khối mã điều kiện. Tài liệu Python cung cấp hướng dẫn rõ ràng về cách sử dụng thành ngữ của tên-chính thành ngữ về vấn đề đó

Đặt càng ít câu lệnh càng tốt vào khối bên dưới

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
031 có thể cải thiện độ rõ ràng và chính xác của mã. [Nguồn]

Giữ mã dưới thành ngữ tên-chính của bạn ở mức tối thiểu. Khi bạn bắt đầu đặt nhiều dòng mã lồng nhau dưới thành ngữ tên-chính, thì thay vào đó, bạn nên xác định một hàm

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 và gọi hàm đó

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
2

Mẫu thiết kế này mang lại cho bạn lợi thế là mã bên dưới tên-chính thành ngữ rõ ràng và ngắn gọn. Ngoài ra, có thể gọi

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 ngay cả khi bạn đã nhập mã của mình dưới dạng một mô-đun, chẳng hạn như để kiểm tra đơn vị các chức năng của nó

Ghi chú. Định nghĩa

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 trong Python có nghĩa khác với các ngôn ngữ khác, chẳng hạn như Java và C. Trong Python, đặt tên hàm này là chính chỉ là một quy ước. Bạn có thể đặt tên bất kỳ cho chức năng này—và như bạn đã thấy trước đây, bạn thậm chí không cần sử dụng nó

Các ngôn ngữ hướng đối tượng khác định nghĩa hàm

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 làm điểm vào cho chương trình. Trong trường hợp đó, trình thông dịch gọi ngầm một hàm tên là
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5, và chương trình của bạn sẽ không hoạt động nếu không có nó

Trong phần này, bạn đã học được rằng có lẽ bạn nên viết thành ngữ tên-chính ở cuối tập lệnh của mình

Nếu bạn có nhiều dòng mã mà bạn định lồng vào bên dưới

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3, thì tốt hơn là bạn nên cấu trúc lại mã đó thành một hàm
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 mà bạn gọi từ khối điều kiện dưới tên-chính thành ngữ

Bây giờ bạn đã biết cách sử dụng thành ngữ name-main, bạn có thể thắc mắc tại sao nó trông khó hiểu hơn các mã Python khác mà bạn đã từng sử dụng

Loại bỏ các quảng cáo

Mã soạn sẵn thành ngữ có nên được đơn giản hóa không?

Nếu bạn đến từ một ngôn ngữ lập trình hướng đối tượng khác, bạn có thể nghĩ rằng thành ngữ tên-chính của Python là một điểm bắt đầu tương tự như các hàm

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 trong Java hoặc C, nhưng vụng về hơn

Meme dựa trên web truyện tranh [Hình ảnh. Mike Organisciak]

Mặc dù chắc chắn là hài hước và dễ hiểu, nhưng meme này dễ gây hiểu lầm vì nó ngụ ý rằng thành ngữ tên-chính có thể so sánh với các hàm điểm vào của

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
5 trong các ngôn ngữ khác

Thành ngữ chính tên Python không đặc biệt. Nó chỉ là một kiểm tra có điều kiện. Thoạt nhìn, nó có vẻ khó hiểu, đặc biệt khi bạn mới bắt đầu làm việc với Python và bạn đã quen với cú pháp gọn gàng và thanh lịch của Python. Xét cho cùng, thành ngữ name-main bao gồm một biến dunder từ không gian tên chung và một chuỗi cũng là một giá trị dunder

Vì vậy, nó không phải là loại điểm vào mà main đại diện trong các ngôn ngữ khác. Nhưng tại sao nó trông giống như vậy?

Nếu bạn duyệt qua kho lưu trữ của danh sách gửi thư ý tưởng Python, PEP bị từ chối và diễn đàn thảo luận Python, thì bạn sẽ tìm thấy một số nỗ lực để thay đổi thành ngữ

Nếu bạn đọc một số cuộc thảo luận này, thì bạn sẽ nhận thấy rằng nhiều Pythonistas dày dạn kinh nghiệm tranh luận rằng thành ngữ này không khó hiểu và không nên thay đổi. Họ đưa ra nhiều lý do

  • Nó ngắn. Hầu hết các thay đổi được đề xuất chỉ lưu hai dòng mã
  • Nó có một trường hợp sử dụng hạn chế. Bạn chỉ nên sử dụng nó nếu bạn cần chạy một tệp dưới dạng mô-đun cũng như tập lệnh. Bạn không cần phải sử dụng nó thường xuyên
  • Nó phơi bày sự phức tạp. Các biến và hàm Dunder là một phần quan trọng của Python khi bạn tìm hiểu sâu hơn một chút. Điều đó có thể làm cho thành ngữ hiện tại trở thành điểm khởi đầu cho người học khơi dậy sự tò mò và cho họ cái nhìn đầu tiên về cú pháp của Python
  • Nó duy trì khả năng tương thích ngược. Thành ngữ tên chính đã trở thành một tiêu chuẩn thực tế trong ngôn ngữ trong một thời gian dài, điều đó có nghĩa là việc thay đổi nó sẽ phá vỡ khả năng tương thích ngược

Được rồi, vì vậy bạn đang mắc kẹt với

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 vào lúc này. Có vẻ như sẽ rất hữu ích nếu bạn tìm ra một cách hay để đề cập đến nó một cách nhất quán và chính xác

Mở rộng phần bên dưới để biết một chút ngữ cảnh và một vài gợi ý về cách bạn có thể nói về thành ngữ chính tên mà không cần vặn lưỡi hoặc thắt ngón tay

Bạn có thể gọi nó là gì?Hiển thị/Ẩn

Có thể bạn sẽ thảo luận về việc sử dụng thành ngữ tên-chính vào một thời điểm nào đó trong sự nghiệp Python của mình. Đó là một cách diễn đạt dài để viết và thậm chí còn rườm rà hơn khi nói to, vì vậy bạn cũng có thể tìm một cách hay để nói về nó

Có nhiều cách khác nhau để đề cập đến nó trong cộng đồng Python. Hầu hết các đề cập trực tuyến bao gồm toàn bộ biểu thức

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 theo sau là một từ

  • Quy ước
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    3 [Nguồn]
  • Biểu thức
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    3 [Nguồn]
  • Thành ngữ
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    045 [Nguồn]
  • Thành ngữ
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    046 [Nguồn]
  • Thành ngữ
    $ python echo.py
    Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
    ooo
    oo
    o
    .
    
    3 [Nguồn]
  • Khổ thơ thực thi [Nguồn]

Như bạn có thể nhận thấy, không có quy ước nghiêm ngặt nào về cách nói về

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3, nhưng có lẽ bạn sẽ không làm sai nếu tuân theo sự đồng thuận chung khi gọi nó là thành ngữ
$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3

Nếu bạn muốn thúc đẩy việc tiêu chuẩn hóa một tên ngắn hơn cho thành ngữ, thì hãy bảo bạn bè của bạn gọi nó là thành ngữ chính tên. Đó là những gì chúng tôi sẽ gọi nó tại Real Python. Nếu bạn thấy thuật ngữ này hữu ích thì có thể nó sẽ trở nên phổ biến

Nếu bạn tò mò, hãy tham gia một số cuộc thảo luận được liên kết trong các kênh cộng đồng Python khác nhau để tìm hiểu thêm về lý do tại sao các nhà phát triển tranh luận về việc giữ nguyên thành ngữ tên-chính như hiện tại

Phần kết luận

Bạn đã biết tác dụng của thành ngữ

$ python echo.py
Yell something at a mountain: HELLOOOO ECHOOOOOOOOOO
ooo
oo
o
.
3 trong Python. Nó cho phép bạn viết mã thực thi khi bạn chạy tệp dưới dạng tập lệnh chứ không phải khi bạn nhập tệp dưới dạng mô-đun. Tốt nhất là sử dụng nó khi bạn muốn thu thập thông tin đầu vào của người dùng trong quá trình chạy tập lệnh và tránh tác dụng phụ khi nhập mô-đun của bạn—ví dụ: để kiểm tra đơn vị các chức năng của mô-đun

Bạn cũng đã biết một số trường hợp sử dụng phổ biến nhưng dưới mức tối ưu và tìm hiểu về các cách tiếp cận tốt hơn và thành ngữ hơn mà bạn có thể thực hiện trong các tình huống đó. Có thể bạn đã chấp nhận thành ngữ tên chính của Python sau khi tìm hiểu thêm về nó, nhưng nếu bạn vẫn không thích nó, thì thật tốt khi biết rằng bạn có thể thay thế cách sử dụng nó trong hầu hết các trường hợp

Khi nào bạn sử dụng thành ngữ tên-chính trong mã Python của mình?

Mã nguồn. Nhấp vào đây để tải xuống mã nguồn miễn phí mà bạn sẽ sử dụng để hiểu thành ngữ tên-chính

Đánh dấu là đã hoàn thành

🐍 Thủ thuật Python 💌

Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python

Gửi cho tôi thủ thuật Python »

Giới thiệu về Martin Breuss

Martin thích tự động hóa, trò đùa ngớ ngẩn và rắn, tất cả đều phù hợp với cộng đồng Python. Anh ấy thích học hỏi và khám phá và cũng sẵn sàng nói về nó. Anh ấy viết và ghi nội dung cho Real Python và CodingNomads

» Thông tin thêm về Martin

Mỗi hướng dẫn tại Real Python được tạo bởi một nhóm các nhà phát triển để nó đáp ứng các tiêu chuẩn chất lượng cao của chúng tôi. Các thành viên trong nhóm đã làm việc trong hướng dẫn này là

Aldren

Geir Arne

Ian

kate

Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bậc thầy Kỹ năng Python trong thế giới thực
Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bạn nghĩ sao?

Đánh giá bài viết này

Tweet Chia sẻ Chia sẻ Email

Bài học số 1 hoặc điều yêu thích mà bạn đã học được là gì?

Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. Nhận các mẹo để đặt câu hỏi hay và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi

__ tệp __ có nghĩa là gì trong Python?

Khi một mô-đun được tải từ một tệp trong Python, __file__ được đặt thành đường dẫn của nó . Sau đó, bạn có thể sử dụng chức năng đó với các chức năng khác để tìm thư mục chứa tệp.

Tệp mô-đun trong Python là gì?

Nói một cách đơn giản, một mô-đun là một tệp bao gồm mã Python . Nó có thể định nghĩa các hàm, lớp và biến và cũng có thể bao gồm mã có thể chạy được. Bất kỳ tệp Python nào cũng có thể được tham chiếu dưới dạng mô-đun. Một tệp chứa mã Python chẳng hạn. kiểm tra. py , được gọi là một mô-đun và tên của nó sẽ là test.

Tên mô-đun Python ở đâu?

Một mô-đun có thể tìm ra tên mô-đun của chính nó bằng cách xem biến toàn cục được xác định trước __name__ .

Phần mở rộng tệp cho các mô-đun Python là gì?

Trong Python, Mô-đun đơn giản là các tệp có phần “ . Tiện ích mở rộng py ” chứa mã Python có thể được nhập bên trong Chương trình Python khác. Nói một cách đơn giản, chúng ta có thể coi một mô-đun giống như một thư viện mã hoặc một tệp chứa một tập hợp các chức năng mà bạn muốn đưa vào ứng dụng của mình.

Chủ Đề