Làm cách nào để nhập tất cả các mô-đun từ gói bằng Python?

Nhập trong python tương tự như #include header_file trong C/C++. Các mô-đun Python có thể truy cập mã từ một mô-đun khác bằng cách nhập tệp/hàm bằng cách nhập. Câu lệnh nhập khẩu là cách phổ biến nhất để gọi máy móc nhập khẩu, nhưng nó không phải là cách duy nhất

nhập module_name

Khi quá trình nhập được sử dụng, nó sẽ tìm kiếm mô-đun ban đầu trong phạm vi cục bộ bằng cách gọi hàm __import__[]. Giá trị được trả về bởi hàm sau đó được phản ánh trong đầu ra của mã ban đầu.  

TRĂN




import math

pie= math.pi

print

3.141592653589793
0_______0_______1
3.141592653589793
2

đầu ra

The value of pi is : ', 3.141592653589793

nhập module_name. Tên thành viên

Trong mô-đun mã trên, toán học được nhập và các biến của nó có thể được truy cập bằng cách coi nó là một lớp và pi là đối tượng của nó.  
Giá trị của pi được trả về bởi __import__[]. toàn bộ pi có thể được nhập vào mã ban đầu của chúng tôi, thay vì nhập toàn bộ mô-đun.  

TRĂN




3.141592653589793
3 mathimport
3.141592653589793
6

 

3.141592653589793
7

3.141592653589793
8

3.141592653589793
9

print

3.14159265359
720
1

đầu ra

3.141592653589793

từ module_name nhập *

Trong mô-đun mã ở trên, toán học không được nhập, thay vào đó chỉ số pi đã được nhập dưới dạng biến.  
Tất cả các hàm và hằng số có thể được nhập bằng cách sử dụng *.  

TRĂN




3.141592653589793
3 mathimport
3.14159265359
720
5

print

3.14159265359
720
1

print

3.14159265359
720
9
Traceback [most recent call last]:
  File "C:/Users/GFG/Tuples/xxx.py", line 1, in 
    import mathematics
ImportError: No module named 'mathematics'
0
Traceback [most recent call last]:
  File "C:/Users/GFG/Tuples/xxx.py", line 1, in 
    import mathematics
ImportError: No module named 'mathematics'
1

Đầu ra

3.14159265359
720

Như đã nói ở trên, nhập sử dụng __import__[] để tìm kiếm mô-đun và nếu không tìm thấy, nó sẽ tăng ImportError

TRĂN




import

Traceback [most recent call last]:
  File "C:/Users/GFG/Tuples/xxx.py", line 1, in 
    import mathematics
ImportError: No module named 'mathematics'
3

print

Traceback [most recent call last]:
  File "C:/Users/GFG/Tuples/xxx.py", line 1, in 
    import mathematics
ImportError: No module named 'mathematics'
5

đầu ra

Traceback [most recent call last]:
  File "C:/Users/GFG/Tuples/xxx.py", line 1, in 
    import mathematics
ImportError: No module named 'mathematics'

Bài viết này được đóng góp bởi Piyush Doorwar. Nếu bạn thích GeeksforGeeks và muốn đóng góp, bạn cũng có thể viết một bài báo bằng cách sử dụng write. chuyên viên máy tính. org hoặc gửi bài viết của bạn tới review-team@geeksforgeeks. tổ chức. Xem bài viết của bạn xuất hiện trên trang chính của GeeksforGeeks và trợ giúp các Geeks khác

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

Bài viết này khám phá các mô-đun Python và các gói Python, hai cơ chế hỗ trợ lập trình mô-đun

Lập trình mô-đun đề cập đến quá trình chia một nhiệm vụ lập trình lớn, khó sử dụng thành các nhiệm vụ hoặc mô-đun riêng biệt, nhỏ hơn, dễ quản lý hơn. Các mô-đun riêng lẻ sau đó có thể được ghép lại với nhau như các khối xây dựng để tạo ra một ứng dụng lớn hơn

Có một số lợi thế để mô đun hóa mã trong một ứng dụng lớn

  • Sự đơn giản. Thay vì tập trung vào toàn bộ vấn đề hiện tại, một mô-đun thường tập trung vào một phần tương đối nhỏ của vấn đề. Nếu bạn đang làm việc trên một mô-đun duy nhất, bạn sẽ có một miền vấn đề nhỏ hơn để xoay sở. Điều này làm cho việc phát triển dễ dàng hơn và ít bị lỗi hơn

  • khả năng bảo trì. Các mô-đun thường được thiết kế sao cho chúng thực thi các ranh giới logic giữa các miền vấn đề khác nhau. Nếu các mô-đun được viết theo cách giảm thiểu sự phụ thuộc lẫn nhau, thì sẽ giảm khả năng sửa đổi một mô-đun sẽ có tác động đến các phần khác của chương trình. [Bạn thậm chí có thể thực hiện các thay đổi đối với một mô-đun mà không cần biết bất kỳ kiến ​​thức nào về ứng dụng bên ngoài mô-đun đó. ] Điều này làm cho một nhóm gồm nhiều lập trình viên có thể làm việc cộng tác trên một ứng dụng lớn trở nên khả thi hơn

  • khả năng tái sử dụng. Có thể dễ dàng sử dụng lại chức năng được xác định trong một mô-đun duy nhất [thông qua giao diện được xác định phù hợp] bởi các phần khác của ứng dụng. Điều này giúp loại bỏ nhu cầu sao chép mã

  • phạm vi. Các mô-đun thường xác định một không gian tên riêng biệt, giúp tránh xung đột giữa các mã định danh trong các khu vực khác nhau của chương trình. [Một trong những nguyên lý trong Zen of Python là Không gian tên là một ý tưởng tuyệt vời—hãy làm nhiều hơn thế nữa. ]

Các chức năng, mô-đun và gói đều là các cấu trúc trong Python thúc đẩy quá trình mô đun hóa mã

Tải xuống PDF miễn phí. Bảng cheat Python 3

Mô-đun Python. Tổng quan

Thực tế, có ba cách khác nhau để xác định một mô-đun trong Python

  1. Một mô-đun có thể được viết bằng chính Python
  2. Một mô-đun có thể được viết bằng C và được tải động trong thời gian chạy, như mô-đun
    >>> import mod
    >>> mod
    
    
    6 [biểu thức chính quy]
  3. Mô-đun tích hợp về bản chất được chứa trong trình thông dịch, chẳng hạn như mô-đun
    >>> import mod
    >>> mod
    
    
    7

Nội dung của mô-đun được truy cập theo cùng một cách trong cả ba trường hợp. với câu lệnh

>>> import mod
>>> mod

8

Ở đây, trọng tâm chủ yếu sẽ là các mô-đun được viết bằng Python. Điều thú vị về các mô-đun được viết bằng Python là chúng cực kỳ đơn giản để xây dựng. Tất cả những gì bạn cần làm là tạo một tệp chứa mã Python hợp pháp, sau đó đặt tên cho tệp có phần mở rộng

>>> import mod
>>> mod

9. Đó là nó. Không có cú pháp đặc biệt hoặc voodoo là cần thiết

Ví dụ: giả sử bạn đã tạo một tệp có tên

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0 chứa các nội dung sau

chế độ. py

s = "If Comrade Napoleon says it, it must be right."
a = [100, 200, 300]

def foo[arg]:
    print[f'arg = {arg}']

class Foo:
    pass

Một số đối tượng được định nghĩa trong

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0

  • >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    2 [một chuỗi]
  • >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    3 [một danh sách]
  • >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    4 [một chức năng]
  • >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    5 [một lớp]

Giả sử

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0 ở một vị trí thích hợp mà bạn sẽ sớm tìm hiểu thêm, những đối tượng này có thể được truy cập bằng cách nhập mô-đun như sau

>>>

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

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

Đường dẫn tìm kiếm mô-đun

Tiếp tục với ví dụ trên, hãy xem điều gì sẽ xảy ra khi Python thực thi câu lệnh

import mod

Khi trình thông dịch thực hiện câu lệnh

>>> import mod
>>> mod

8 ở trên, nó sẽ tìm kiếm
>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0 trong danh sách các thư mục được tập hợp từ các nguồn sau

  • Thư mục chạy tập lệnh đầu vào hoặc thư mục hiện tại nếu trình thông dịch đang được chạy tương tác
  • Danh sách các thư mục chứa trong biến môi trường, nếu nó được đặt. [Định dạng cho
    >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    9 phụ thuộc vào hệ điều hành nhưng phải bắt chước biến môi trường
    >>> mod.s
    'If Comrade Napoleon says it, it must be right.'
    >>> mod.foo['quux']
    arg = quux
    
    1. ]
  • Danh sách các thư mục phụ thuộc vào cài đặt được định cấu hình tại thời điểm Python được cài đặt

Đường dẫn tìm kiếm kết quả có thể truy cập được trong biến Python

>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux
2, được lấy từ một mô-đun có tên
>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux
3

>>>

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']

Ghi chú. Nội dung chính xác của

>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux
2 phụ thuộc vào cài đặt. Phần trên gần như chắc chắn sẽ trông hơi khác trên máy tính của bạn

Vì vậy, để đảm bảo tìm thấy mô-đun của bạn, bạn cần thực hiện một trong các thao tác sau

  • Đặt
    >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    0 vào thư mục chứa tập lệnh đầu vào hoặc thư mục hiện tại, nếu tương tác
  • Sửa đổi biến môi trường
    >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    9 để chứa thư mục chứa
    >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    0 trước khi bắt đầu trình thông dịch
    • Hoặc là. Đặt
      >>> s
      NameError: name 's' is not defined
      >>> foo['quux']
      NameError: name 'foo' is not defined
      
      0 vào một trong các thư mục đã có trong biến
      >>> s
      NameError: name 's' is not defined
      >>> foo['quux']
      NameError: name 'foo' is not defined
      
      9
  • Đặt
    >>> s
    NameError: name 's' is not defined
    >>> foo['quux']
    NameError: name 'foo' is not defined
    
    0 vào một trong các thư mục phụ thuộc vào cài đặt mà bạn có thể có hoặc không có quyền ghi vào, tùy thuộc vào hệ điều hành

Thực sự có một tùy chọn bổ sung. bạn có thể đặt tệp mô-đun vào bất kỳ thư mục nào bạn chọn và sau đó sửa đổi

>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux
2 trong thời gian chạy để nó chứa thư mục đó. Ví dụ, trong trường hợp này, bạn có thể đặt
>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0 trong thư mục
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

03 và sau đó đưa ra các câu lệnh sau

>>>

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod

Khi một mô-đun đã được nhập, bạn có thể xác định vị trí tìm thấy mô-đun bằng thuộc tính

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

04 của mô-đun

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'

Phần thư mục của

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

04 phải là một trong các thư mục trong
>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux
2

Tuyên bố
>>> import mod
>>> mod

8

Nội dung mô-đun được cung cấp cho người gọi với câu lệnh

>>> import mod
>>> mod

8. Câu lệnh
>>> import mod
>>> mod

8 có nhiều dạng khác nhau, được hiển thị bên dưới

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

10

Hình thức đơn giản nhất là hình thức đã được hiển thị ở trên

import 

Lưu ý rằng điều này không làm cho nội dung mô-đun có thể truy cập trực tiếp vào người gọi. Mỗi mô-đun có bảng ký hiệu riêng, đóng vai trò là bảng ký hiệu chung cho tất cả các đối tượng được xác định trong mô-đun. Do đó, một mô-đun tạo một không gian tên riêng, như đã lưu ý

Câu lệnh

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

10 chỉ đặt
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

12 trong bảng ký hiệu của người gọi. Các đối tượng được xác định trong mô-đun vẫn còn trong bảng ký hiệu riêng của mô-đun

Từ trình gọi, các đối tượng trong mô-đun chỉ có thể truy cập được khi có tiền tố là

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

12 thông qua ký hiệu dấu chấm, như minh họa bên dưới

Sau câu lệnh

>>> import mod
>>> mod

8 sau đây,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

15 được đặt vào bảng ký hiệu cục bộ. Do đó,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

15 có ý nghĩa trong ngữ cảnh địa phương của người gọi

>>>

>>> import mod
>>> mod

Nhưng

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
2 và
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

18 vẫn nằm trong bảng ký hiệu riêng của mô-đun và không có ý nghĩa trong ngữ cảnh địa phương

>>>

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined

Để được truy cập trong ngữ cảnh cục bộ, tên của các đối tượng được xác định trong mô-đun phải có tiền tố là

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

15

>>>

>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux

Một số mô-đun được phân tách bằng dấu phẩy có thể được chỉ định trong một câu lệnh

>>> import mod
>>> mod

8

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

0

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

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

21

Một dạng thay thế của câu lệnh

>>> import mod
>>> mod

8 cho phép các đối tượng riêng lẻ từ mô-đun được nhập trực tiếp vào bảng ký hiệu của người gọi

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

1

Sau khi thực hiện câu lệnh trên,

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

23 có thể được tham chiếu trong môi trường của người gọi mà không cần tiền tố
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

12

>>>

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

2

Vì dạng

>>> import mod
>>> mod

8 này đặt tên đối tượng trực tiếp vào bảng ký hiệu của người gọi, bất kỳ đối tượng nào đã tồn tại có cùng tên sẽ bị ghi đè

>>>

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

3

Thậm chí có thể

>>> import mod
>>> mod

8 bừa bãi mọi thứ từ một mô-đun ngay lập tức

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

4

Điều này sẽ đặt tên của tất cả các đối tượng từ

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

12 vào bảng ký hiệu cục bộ, ngoại trừ bất kỳ đối tượng nào bắt đầu bằng ký tự gạch dưới [
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

28]

Ví dụ

>>>

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

5

Điều này không nhất thiết được khuyến nghị trong mã sản xuất quy mô lớn. Hơi nguy hiểm vì bạn đang nhập tên vào bảng ký hiệu cục bộ hàng loạt. Trừ khi bạn biết rõ tất cả chúng và có thể tự tin rằng sẽ không có xung đột, nếu không bạn sẽ có cơ hội vô tình ghi đè lên một tên hiện có. Tuy nhiên, cú pháp này khá tiện dụng khi bạn chỉ loay hoay với trình thông dịch tương tác, cho mục đích thử nghiệm hoặc khám phá, bởi vì nó nhanh chóng cho phép bạn truy cập vào mọi thứ mà một mô-đun cung cấp mà không cần gõ nhiều

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

29

Cũng có thể

>>> import mod
>>> mod

8 đối tượng riêng lẻ nhưng nhập chúng vào bảng ký hiệu địa phương với các tên thay thế

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

6

Điều này cho phép đặt tên trực tiếp vào bảng ký hiệu cục bộ nhưng tránh xung đột với các tên đã tồn tại trước đó

>>>

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

7

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

31

Bạn cũng có thể nhập toàn bộ mô-đun dưới tên thay thế

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

8

>>>

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

9

Nội dung mô-đun có thể được nhập từ bên trong định nghĩa hàm. Trong trường hợp đó,

>>> import mod
>>> mod

8 không xảy ra cho đến khi hàm được gọi

>>>

import mod
0

Tuy nhiên, Python 3 không cho phép cú pháp

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

33 bừa bãi từ bên trong một hàm

>>>

import mod
1

Cuối cùng, một câu lệnh

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

34 với mệnh đề
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

35 có thể được sử dụng để đề phòng những nỗ lực không thành công của
>>> import mod
>>> mod

8

>>>

import mod
2

>>>

import mod
3

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

Hàm
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

37

Hàm dựng sẵn

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

37 trả về danh sách các tên đã xác định trong một không gian tên. Không có đối số, nó tạo ra một danh sách các tên được sắp xếp theo thứ tự bảng chữ cái trong bảng ký hiệu cục bộ hiện tại

>>>

import mod
4

Lưu ý cách cuộc gọi đầu tiên tới

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

37 ở trên liệt kê một số tên được xác định tự động và đã có trong không gian tên khi trình thông dịch bắt đầu. Khi các tên mới được xác định [
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

40,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

41,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

42], chúng sẽ xuất hiện trong các lần gọi tiếp theo của
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

37

Điều này có thể hữu ích để xác định chính xác những gì đã được thêm vào không gian tên bằng một câu lệnh nhập

>>>

import mod
5

Khi đưa ra một đối số là tên của một mô-đun,

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

37 liệt kê các tên được xác định trong mô-đun

>>>

import mod
6

>>>

import mod
7

Thực thi một Mô-đun dưới dạng Tập lệnh

Bất kỳ tệp

>>> import mod
>>> mod

9 nào chứa mô-đun về cơ bản cũng là một tập lệnh Python và không có lý do gì mà nó không thể được thực thi như một

Đây một lần nữa là

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0 như đã được định nghĩa ở trên

chế độ. py

s = "If Comrade Napoleon says it, it must be right."
a = [100, 200, 300]

def foo[arg]:
    print[f'arg = {arg}']

class Foo:
    pass

Điều này có thể được chạy như một kịch bản

import mod
9

Không có lỗi, vì vậy nó rõ ràng đã hoạt động. Cấp, nó không phải là rất thú vị. Khi nó được viết, nó chỉ định nghĩa các đối tượng. Nó không làm bất cứ điều gì với chúng và nó không tạo ra bất kỳ đầu ra nào

Hãy sửa đổi mô-đun Python ở trên để nó tạo ra một số đầu ra khi chạy dưới dạng tập lệnh

chế độ. py

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
0

Bây giờ nó sẽ thú vị hơn một chút

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
1

Thật không may, bây giờ nó cũng tạo đầu ra khi được nhập dưới dạng mô-đun

>>>

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
2

Đây có lẽ không phải là những gì bạn muốn. Mô-đun không thường tạo đầu ra khi được nhập

Sẽ thật tuyệt nếu bạn có thể phân biệt giữa thời điểm tệp được tải dưới dạng mô-đun và khi tệp được chạy dưới dạng tập lệnh độc lập?

Hỏi và ngươi sẽ nhận được

Khi một tệp

>>> import mod
>>> mod

9 được nhập dưới dạng một mô-đun, Python đặt biến dunder đặc biệt
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

48 thành tên của mô-đun. Tuy nhiên, nếu một tệp được chạy dưới dạng tập lệnh độc lập, thì
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

48 được đặt [một cách sáng tạo] thành chuỗi
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

50. Sử dụng thực tế này, bạn có thể phân biệt trường hợp nào xảy ra trong thời gian chạy và thay đổi hành vi cho phù hợp

chế độ. py

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
3

Bây giờ, nếu bạn chạy dưới dạng tập lệnh, bạn sẽ nhận được kết quả

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
4

Nhưng nếu bạn nhập dưới dạng mô-đun, bạn không

>>>

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
5

Các mô-đun thường được thiết kế với khả năng chạy dưới dạng tập lệnh độc lập nhằm mục đích kiểm tra chức năng có trong mô-đun. Điều này được gọi là thử nghiệm đơn vị. Ví dụ: giả sử bạn đã tạo một mô-đun

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

51 chứa hàm giai thừa, như sau

thực tế. py

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
6

Tệp có thể được coi là một mô-đun và hàm

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

52 đã được nhập

>>>

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
7

Nhưng nó cũng có thể được chạy độc lập bằng cách chuyển một đối số số nguyên trên dòng lệnh để kiểm tra

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
8

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

Tải lại một mô-đun

Vì lý do hiệu quả, một mô-đun chỉ được tải một lần cho mỗi phiên phiên dịch. Điều đó tốt cho các định nghĩa hàm và lớp, thường chiếm phần lớn nội dung của mô-đun. Nhưng một mô-đun cũng có thể chứa các câu lệnh thực thi, thường là để khởi tạo. Xin lưu ý rằng các câu lệnh này sẽ chỉ được thực thi khi lần đầu tiên một mô-đun được nhập

Xem xét tệp sau

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
0

chế độ. py

>>> import sys
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages']
9

>>>

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
0

Câu lệnh

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

54 không được thực hiện trong các lần nhập tiếp theo. [Đối với vấn đề đó, câu lệnh gán cũng vậy, nhưng khi hiển thị cuối cùng giá trị của
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

55 cho thấy, điều đó không thành vấn đề. Một khi nhiệm vụ được thực hiện, nó dính. ]

Nếu bạn thực hiện thay đổi đối với mô-đun và cần tải lại mô-đun đó, bạn cần khởi động lại trình thông dịch hoặc sử dụng chức năng có tên là

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

56 từ mô-đun
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

57

>>>

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
1

Gói Python

Giả sử bạn đã phát triển một ứng dụng rất lớn bao gồm nhiều mô-đun. Khi số lượng mô-đun tăng lên, việc theo dõi tất cả chúng trở nên khó khăn nếu chúng được đổ vào một vị trí. Điều này đặc biệt đúng nếu chúng có tên hoặc chức năng tương tự nhau. Bạn có thể muốn có một phương tiện để nhóm và tổ chức chúng

Các gói cho phép cấu trúc phân cấp của không gian tên mô-đun bằng cách sử dụng ký hiệu dấu chấm. Cũng giống như cách mà các mô-đun giúp tránh xung đột giữa các tên biến toàn cục, các gói giúp tránh xung đột giữa các tên mô-đun

Việc tạo một gói khá đơn giản vì nó sử dụng cấu trúc tệp phân cấp vốn có của hệ điều hành. Xét cách sắp xếp sau

Ở đây, có một thư mục tên là

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 chứa hai mô-đun,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

59 và
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

60. Nội dung của các mô-đun là

mod1. py

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
2

mod2. py

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
3

Với cấu trúc này, nếu thư mục

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 nằm ở vị trí có thể tìm thấy thư mục đó [ở một trong các thư mục có trong
>>> mod.s
'If Comrade Napoleon says it, it must be right.'
>>> mod.foo['quux']
arg = quux
2], bạn có thể tham khảo hai mô-đun có ký hiệu dấu chấm [
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

63,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

64] và nhập chúng bằng cú pháp mà bạn

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

0

>>>

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
5

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

1

>>>

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
7

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
8

>>>

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
9

Bạn cũng có thể nhập các mô-đun với các câu lệnh này

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
0

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
1

Về mặt kỹ thuật, bạn cũng có thể nhập gói

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
2

Nhưng điều này ít có ích. Mặc dù nói một cách nghiêm túc, đây là một câu lệnh Python đúng về mặt cú pháp, nhưng nó không làm được gì nhiều hữu ích. Cụ thể, nó không đặt bất kỳ mô-đun nào trong

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 vào không gian tên cục bộ

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
3

Để thực sự nhập các mô-đun hoặc nội dung của chúng, bạn cần sử dụng một trong các biểu mẫu được hiển thị ở trên

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

Khởi tạo gói

Nếu một tệp có tên

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 có trong thư mục gói, nó sẽ được gọi khi gói hoặc mô-đun trong gói được nhập. Điều này có thể được sử dụng để thực thi mã khởi tạo gói, chẳng hạn như khởi tạo dữ liệu cấp gói

Ví dụ: xem xét tệp

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 sau

__trong đó__. py

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
4

Hãy thêm tệp này vào thư mục

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 từ ví dụ trên

Bây giờ khi gói được nhập, danh sách toàn cầu

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

69 được khởi tạo

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
5

Một mô-đun trong gói có thể truy cập biến toàn cục bằng cách nhập lần lượt

mod1. py

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
6

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
7

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 cũng có thể được sử dụng để tự động nhập các mô-đun từ một gói. Ví dụ: trước đó bạn đã thấy rằng câu lệnh
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

71 chỉ đặt tên
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 trong bảng ký hiệu cục bộ của trình gọi và không nhập bất kỳ mô-đun nào. Nhưng nếu
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 trong thư mục
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 chứa thông tin sau

__trong đó__. py

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
8

sau đó khi bạn thực thi

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

71, các mô-đun
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

76 và
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

77 sẽ được nhập tự động

>>>

>>> import mod
>>> mod.__file__
'C:\\Users\\john\\mod.py'

>>> import re
>>> re.__file__
'C:\\Python36\\lib\\re.py'
9

Ghi chú. Phần lớn tài liệu Python nói rằng tệp

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 phải có trong thư mục gói khi tạo gói. Điều này đã từng đúng. Trước đây, chính sự hiện diện của
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 đã báo hiệu cho Python rằng một gói đang được xác định. Tệp có thể chứa mã khởi tạo hoặc thậm chí trống, nhưng nó phải có mặt

Bắt đầu với Python 3. 3, Các gói không gian tên ẩn đã được giới thiệu. Những thứ này cho phép tạo một gói mà không cần bất kỳ tệp

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 nào. Tất nhiên, nó vẫn có thể xuất hiện nếu cần khởi tạo gói. Nhưng nó không còn cần thiết

Nhập khẩu
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

81 Từ một Gói hàng

Vì mục đích của cuộc thảo luận sau đây, gói được xác định trước đó được mở rộng để chứa một số mô-đun bổ sung

Hiện tại có bốn mô-đun được định nghĩa trong thư mục

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58. Nội dung của chúng như hình bên dưới

mod1. py

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
2

mod2. py

>>> sys.path.append[r'C:\Users\john']
>>> sys.path
['', 'C:\\Users\\john\\Documents\\Python\\doc', 'C:\\Python36\\Lib\\idlelib',
'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib',
'C:\\Python36', 'C:\\Python36\\lib\\site-packages', 'C:\\Users\\john']
>>> import mod
3

mod3. py

import 
2

mod4. py

import 
3

[Trí tưởng tượng, phải không?]

Bạn đã thấy rằng khi

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

33 được sử dụng cho một mô-đun, tất cả các đối tượng từ mô-đun được nhập vào bảng ký hiệu cục bộ, ngoại trừ những đối tượng có tên bắt đầu bằng dấu gạch dưới, như thường lệ

>>>

import 
4

Câu lệnh tương tự cho một gói là thế này

import 
5

Cái đó làm cái gì?

>>>

import 
6

Hừm. Không nhiều. Bạn có thể đã mong đợi [giả sử bạn có bất kỳ kỳ vọng nào] rằng Python sẽ đi sâu vào thư mục gói, tìm tất cả các mô-đun có thể và nhập tất cả chúng. Nhưng như bạn có thể thấy, theo mặc định, đó không phải là điều xảy ra

Thay vào đó, Python tuân theo quy ước này. nếu tệp

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 trong thư mục gói chứa danh sách có tên
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

85, thì nó được coi là danh sách các mô-đun sẽ được nhập khi gặp câu lệnh
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

86

Đối với ví dụ hiện tại, giả sử bạn tạo một

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

66 trong thư mục
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58 như thế này

pkg/__init__. py

import 
7

Bây giờ

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

89 nhập cả bốn mô-đun

>>>

import 
8

Sử dụng

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

33 vẫn không được coi là hình thức tuyệt vời, đối với gói nhiều hơn đối với mô-đun. Nhưng cơ sở này ít nhất cung cấp cho người tạo gói một số quyền kiểm soát đối với những gì xảy ra khi ____33_______33 được chỉ định. [Trên thực tế, nó cung cấp khả năng không cho phép hoàn toàn, đơn giản bằng cách từ chối xác định
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

85. Như bạn đã thấy, hành vi mặc định cho các gói là không nhập gì cả. ]

Nhân tiện,

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

85 cũng có thể được định nghĩa trong một mô-đun và phục vụ cùng một mục đích. để kiểm soát những gì được nhập khẩu với
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

33. Ví dụ, sửa đổi
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

59 như sau

pkg/mod1. py

import 
9

Bây giờ, một câu lệnh

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

33 từ
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

63 sẽ chỉ nhập những gì có trong
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

85

>>>

>>> import mod
>>> mod

0

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
4 [hàm] hiện được xác định trong không gian tên cục bộ, nhưng
>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
5 [lớp] thì không, vì lớp sau không có trong
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

85

Tóm lại,

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

85 được sử dụng bởi cả gói và mô-đun để kiểm soát những gì được nhập khi _____33_______33 được chỉ định. Nhưng hành vi mặc định khác

  • Đối với một gói, khi
    >>> import mod
    >>> print[mod.s]
    If Comrade Napoleon says it, it must be right.
    >>> mod.a
    [100, 200, 300]
    >>> mod.foo[['quux', 'corge', 'grault']]
    arg = ['quux', 'corge', 'grault']
    >>> x = mod.Foo[]
    >>> x
    
    
    85 không được xác định, thì
    >>> import mod
    >>> print[mod.s]
    If Comrade Napoleon says it, it must be right.
    >>> mod.a
    [100, 200, 300]
    >>> mod.foo[['quux', 'corge', 'grault']]
    arg = ['quux', 'corge', 'grault']
    >>> x = mod.Foo[]
    >>> x
    
    
    33 không nhập bất kỳ thứ gì
  • Đối với một mô-đun, khi
    >>> import mod
    >>> print[mod.s]
    If Comrade Napoleon says it, it must be right.
    >>> mod.a
    [100, 200, 300]
    >>> mod.foo[['quux', 'corge', 'grault']]
    arg = ['quux', 'corge', 'grault']
    >>> x = mod.Foo[]
    >>> x
    
    
    85 không được xác định,
    >>> import mod
    >>> print[mod.s]
    If Comrade Napoleon says it, it must be right.
    >>> mod.a
    [100, 200, 300]
    >>> mod.foo[['quux', 'corge', 'grault']]
    arg = ['quux', 'corge', 'grault']
    >>> x = mod.Foo[]
    >>> x
    
    
    33 sẽ nhập mọi thứ [ngoại trừ—bạn đã đoán ra—các tên bắt đầu bằng dấu gạch dưới]

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

gói con

Các gói có thể chứa các gói con lồng nhau đến độ sâu tùy ý. Ví dụ: hãy thực hiện thêm một sửa đổi đối với thư mục gói ví dụ như sau

Bốn mô-đun [

>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

59,
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

60,
import mod
10 và
import mod
11] được định nghĩa như trước đây. Nhưng bây giờ, thay vì được gộp chung vào thư mục
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

58, chúng được chia thành hai thư mục gói con,
import mod
13 và
import mod
14

Quá trình nhập vẫn hoạt động giống như được hiển thị trước đó. Cú pháp tương tự, nhưng ký hiệu dấu chấm bổ sung được sử dụng để tách tên gói khỏi tên gói phụ

>>>

>>> import mod
>>> mod

1

Ngoài ra, một mô-đun trong một gói con có thể tham chiếu các đối tượng trong gói con anh chị em [trong trường hợp anh chị em chứa một số chức năng mà bạn cần]. Ví dụ: giả sử bạn muốn nhập và thực thi hàm

>>> s
NameError: name 's' is not defined
>>> foo['quux']
NameError: name 'foo' is not defined
4 [được xác định trong mô-đun
>>> import mod
>>> print[mod.s]
If Comrade Napoleon says it, it must be right.
>>> mod.a
[100, 200, 300]
>>> mod.foo[['quux', 'corge', 'grault']]
arg = ['quux', 'corge', 'grault']
>>> x = mod.Foo[]
>>> x

76] từ bên trong mô-đun
import mod
17. Bạn có thể sử dụng nhập khẩu tuyệt đối

pkg/sub__pkg2/mod3. py

>>> import mod
>>> mod

2

>>>

>>> import mod
>>> mod

3

Hoặc bạn có thể sử dụng nhập tương đối, trong đó

import mod
18 đề cập đến gói tăng một cấp. Từ bên trong
import mod
10, nằm trong gói con
import mod
14,

  • import mod
    
    18 đánh giá gói mẹ [
    >>> import mod
    >>> print[mod.s]
    If Comrade Napoleon says it, it must be right.
    >>> mod.a
    [100, 200, 300]
    >>> mod.foo[['quux', 'corge', 'grault']]
    arg = ['quux', 'corge', 'grault']
    >>> x = mod.Foo[]
    >>> x
    
    
    58] và
  • import mod
    
    23 đánh giá thành gói con
    import mod
    
    13 của gói mẹ

pkg/sub__pkg2/mod3. py

>>> import mod
>>> mod

4

>>>

>>> import mod
>>> mod

5

Phần kết luận

Trong hướng dẫn này, bạn đã đề cập đến các chủ đề sau

  • Cách tạo mô-đun Python
  • Các vị trí mà trình thông dịch Python tìm kiếm một mô-đun
  • Cách lấy quyền truy cập vào các đối tượng được xác định trong một mô-đun bằng câu lệnh
    >>> import mod
    >>> mod
    
    
    8
  • Cách tạo mô-đun có thể thực thi dưới dạng tập lệnh độc lập
  • Cách tổ chức các mô-đun thành các gói và gói con
  • Cách kiểm soát việc khởi tạo gói

Tải xuống PDF miễn phí. Bảng cheat Python 3

Điều này hy vọng sẽ cho phép bạn hiểu rõ hơn về cách truy cập vào chức năng có sẵn trong nhiều mô-đun tích hợp và bên thứ ba có sẵn trong Python

Ngoài ra, nếu bạn đang phát triển ứng dụng của riêng mình, việc tạo các mô-đun và gói của riêng bạn sẽ giúp bạn tổ chức và mô-đun hóa mã của mình, giúp mã hóa, bảo trì và gỡ lỗi dễ dàng hơn

Nếu bạn muốn tìm hiểu thêm, hãy xem tài liệu sau tại Python. tổ chức

  • Hệ thống
    >>> import mod
    >>> mod
    
    
    8
  • hướng dẫn Python. mô-đun

Python hạnh phúc

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

Xem ngay Hướng dẫn này có một khóa học video liên quan do nhóm Real Python tạo. Xem nó cùng với hướng dẫn bằng văn bản để hiểu sâu hơn. Các mô-đun và gói Python. Giới thiệu

🐍 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ề John Sturtz

John là một Pythonista cuồng nhiệt và là thành viên của nhóm hướng dẫn Real Python

» Thông tin thêm về John

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à

Đan

Joanna

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 »

Chuyên gia 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. 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

Làm cách nào để nhập tất cả từ gói Python?

Bạn có thể nhập tất cả mã từ một mô-đun bằng cách chỉ định từ khóa nhập theo sau là mô-đun bạn muốn nhập . câu lệnh nhập xuất hiện ở đầu tệp Python, bên dưới bất kỳ nhận xét nào có thể tồn tại. Điều này là do việc nhập các mô-đun hoặc gói ở đầu tệp giúp cấu trúc mã của bạn rõ ràng hơn.

Làm cách nào để nhập mô-đun trong Python?

Mô-đun Python .
Lưu mã này vào tệp có tên mymodule. py. .
Nhập mô-đun có tên mymodule và gọi hàm chào. .
Lưu mã này vào tệp mymodule. py. .
Nhập mô-đun có tên mymodule và truy cập từ điển person1. .
Tạo bí danh cho mymodule gọi là mx. .
Nhập và sử dụng mô-đun nền tảng

3 cách khác nhau để nhập mô-đun trong Python là gì?

Các cách khác nhau để nhập mô-đun. .
Sử dụng câu lệnh nhập khẩu
Sử dụng mệnh đề
Sử dụng từ mệnh đề và *

Chủ Đề