Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

Tôi đã tìm thấy điều này, nhưng đó không hoàn toàn là những gì tôi muốn làm.

Tôi muốn nhập tất cả các lớp trong tất cả các tệp trong một thư mục. Về cơ bản, tôi muốn thay thế điều này:

from A import *
from B import *
from C import *

Với một cái gì đó năng động, để tôi không tiếp tục chỉnh sửa

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
2 của mình mỗi khi tôi thêm một tệp khác.


Giải pháp

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
3 dường như tương đương với

import A
import B
import C

mà không giống nhau chút nào.

Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

Đã hỏi ngày 5 tháng 6 năm 2011 lúc 22:56Jun 5, 2011 at 22:56

9

Bạn có thể làm một cái gì đó như thế này, mặc dù hãy ghi nhớ

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
4 chỉ hoạt động với các lớp học kiểu mới.

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)

Đã trả lời ngày 5 tháng 6 năm 2011 lúc 22:59Jun 5, 2011 at 22:59

Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

Zeekayzeekayzeekay

51K13 Huy hiệu vàng107 Huy hiệu bạc105 Huy hiệu Đồng13 gold badges107 silver badges105 bronze badges

7

Giả sử cấu trúc tệp của bạn như sau:

/Foo
    A.py
    B.py
    C.py

Để nhập tất cả cùng một lúc, bạn cần tạo tệp

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
2 trong thư mục bạn muốn nhập mọi thứ, với mã sau đây:

__all__ = ['A', 'B', 'C']

Đây là cấu trúc tệp sau những thay đổi đó:

/Foo
    A.py
    B.py
    C.py
    __init__.py

Sau đó, bạn có thể chỉ cần sử dụng:

from Foo import *

Danny Bullis

2.6392 Huy hiệu vàng26 Huy hiệu bạc34 Huy hiệu đồng2 gold badges26 silver badges34 bronze badges

Đã trả lời ngày 5 tháng 9 năm 2020 lúc 1:59Sep 5, 2020 at 1:59

1

Trong bài viết này, chúng tôi sẽ hiểu sự cần thiết của lập trình mô -đun và sau đó sẽ tìm hiểu cách nhập các lớp từ một tệp khác trong ngôn ngữ lập trình Python. Chúng tôi sẽ thảo luận về một số ví dụ để hiểu chúng rõ ràng hơn. Chúng tôi cũng sẽ hiểu làm thế nào các thư viện được xác định trước giúp chúng tôi. Vậy hãy bắt đầu.modular programming and then will learn how to Import Classes from another file in the python programming language. We will discuss some examples to understand them more clearly. We will also understand how predefined libraries help us. So let’s get started.

Tại sao nó cần thiết?

Vì vậy, câu hỏi đầu tiên nghe có vẻ như tại sao chúng ta cần nhập bất kỳ tệp hoặc lớp nào từ một tệp khác? Hoặc, nó thực sự quan trọng? Hoặc, nó sẽ ảnh hưởng đến phương pháp lập trình của chúng tôi như thế nào? Câu trả lời cho tất cả những câu hỏi này nằm trong bài viết này.why we need to import any file or classes from another file? Or, Is it really important? Or, How it will affect our programming approach? Answers to all these questions are within this article.

Đầu tiên, hiểu tại sao nó cần thiết? Trong lập trình, chúng ta thường ở trong các tình huống mà chúng ta phải lặp lại một số hoạt động nhất định. Viết mã cho họ mỗi lần là một nhiệm vụ khá tẻ nhạt. Để tránh các tình huống như vậy, chúng tôi sử dụng khái niệm lập trình hướng đối tượng AKA OOPS.Object-Oriented Programming aka OOPs.

Lập trình hướng đối tượng hoặc rất tiếc

OOPS là một khái niệm lập trình trong đó chúng tôi tạo các đối tượng dựa trên một số lớp được xác định có một số thuộc tính (được gọi là thuộc tính) và các hàm (được gọi là phương thức). Ưu điểm của việc làm điều đó là chúng ta có thể sử dụng lại nó một số lần chúng ta muốn. Chúng ta cũng có thể thực hiện các thực thể thời gian thực khác như kế thừa (nghĩa là các thuộc tính kế thừa từ các lớp khác), trừu tượng hóa (nghĩa là ẩn thông tin), đa hình (tức là hiện tại dưới nhiều hình thức) E.T.C. trong đó. Đó là một khái niệm độc lập trong chính nó, vì vậy chúng ta sẽ nói về nó phần nào sau này. Hiện tại, hãy tiến lên phía trước và nói về lập trình mô -đun.attributes) and functions (called methods). The advantage of doing that is we can reuse it a number of times we want. We can also implement other real-time entities like inheritance ( i.e. inheriting properties from other classes), abstraction ( i.e. information hiding), polymorphism (i.e. present in many forms) e.t.c. in it. It is an independent concept in itself, so we will talk about it somewhat later. For now, move ahead and talk about modular programming.

Lập trình mô -đun

Mặc dù, OOPS là một cách lập trình hiệu quả và thông minh, chúng ta có thể nói rằng chính nó giải quyết tất cả các vấn đề một mình. Bên cạnh khái niệm cốt lõi của rất tiếc, có một số vấn đề khác mà chúng ta gặp phải trong khi lập trình. Làm việc trên các kịch bản thực sự rất khác với cái mà chúng ta học được. Trong thực tế, việc giải quyết bất kỳ vấn đề nào có thể yêu cầu hàng ngàn dòng mã có thể có hàng trăm chức năng và hàng chục lớp. Duy trì tất cả các chức năng và lớp học trong một chương trình là một nhiệm vụ khó khăn. Vì vậy, chúng tôi sử dụng phương pháp lập trình mô -đun để đối phó với các tình huống như vậy.

Lập trình mô -đun là một phương pháp lập trình trong đó thay vì viết mã cho một vấn đề lớn, chúng tôi chia nó thành một số vấn đề nhỏ độc lập. Khi chúng tôi giải quyết từng người trong số họ, chúng tôi hợp nhất họ để đạt được mục tiêu chính của chúng tôi.

Lợi thế của việc sử dụng lập trình mô -đun

Ưu điểm của việc theo cách tiếp cận là chúng ta có thể tăng khả năng đọc của mã. Chúng ta có thể sử dụng lại nó một số lần. Hơn nữa, chúng tôi dễ dàng duy trì chúng và thay đổi chúng theo mục đích sử dụng của chúng tôi. Hơn nữa, nó giúp chúng tôi rất nhiều trong khi gỡ lỗi chương trình của chúng tôi vì chúng tôi không phải loay hoay trong một tệp.readability of codes. We can reuse it a number of times. More, it is easy for us to maintain them and make changes to them according to our use. Moreover, it helps us a lot while debugging our program as we don’t have to fumble much in one file.

Giới thiệu về Báo cáo nhập khẩu

Một khi tất cả các vấn đề độc lập được giải quyết, câu hỏi đặt ra là làm thế nào chúng ta có thể liên kết chúng. Ở đây, tuyên bố nhập khẩu Python đi vào hình ảnh.Python Import statement comes into the picture.

Báo cáo nhập giúp nhập mã từ các tệp hoặc mô -đun khác vào tệp chúng tôi đang làm việc. Bạn có thể nghĩ về nó như một cây cầu cho phép chúng tôi truy cập vào các thuộc tính hoặc phương thức của lớp từ các tệp khác để chúng tôi có thể sử dụng chúng. Tuy nhiên, có một cú pháp thích hợp để làm theo để làm điều mà chúng ta sẽ thấy trong vài giây. Trước đó lần đầu tiên hiểu cấu trúc thư mục đã cho. helps in importing code from other files or modules into the file we are working on. You can think of it as a bridge that gives us access to the class attributes or methods from other files so that we can use them. However, there is a proper syntax to follow to do that which we will see in a few seconds. Before that first understand the given directory structure.


application
  |
  |---- module1
  |       |------- __init__.py
  |       |------- file1.py
  |       |------- file2.py
  |
  |---- module2
          |------- file3.py
          

Vì vậy, trong cấu trúc thư mục đã cho, chúng tôi có một thư mục ứng dụng chứa hai thư mục có tên Module1 và Module2. Bên trong mỗi thư mục, chúng tôi có các tệp có tên FILE1, FILE2 và FILE3 tương ứng. Bây giờ, chúng tôi sẽ thảo luận về các kịch bản khác nhau của việc nhập các lớp hoặc tệp từng cái một. Chúng tôi đi đây,

Trong ví dụ này, trước tiên, chúng tôi sẽ xác định một lớp trong file1.py và sau đó nhập nó vào File2.py.

application/module1/file1.py

class ArithmeticOperations:

    def __init__(self):
        self.sum_ = 0
    
    def get_sum(self,num1,num2):
        self.sum_ = num1+num2
        return self.sum_

import A
import B
import C
0

import A
import B
import C
1

import A
import B
import C
2

Trong ví dụ trên, chúng tôi đã nhập FILE1 bằng cách sử dụng câu lệnh nhập khẩu. Sau đó, chúng tôi tạo một thể hiện của lớp chúng tôi muốn sử dụng, tức là các hoạt động học bằng cách tham khảo nó. Chúng ta có thể hiểu nó như;“import” statement. After that, we create an instance of the class we want to use i.e. ArithmeticOperations by referring to it. We can understand it as;

  • Chúng tôi đã nhập tệp có tên File1.
  • Sau đó, chúng tôi đề cập đến lớp đó bằng File1.arithMeticOperations () và gán nó cho biến OBJ biến.file1.ArithmeticOperations() and assign it to variable obj.
  • Sau đó, chúng tôi gọi chức năng get_sum bằng cách sử dụng đối tượng ‘obj.get_sum function by using ‘obj’ object.
  • Và, sau đó in kết quả được gán trong ‘C‘ biến.c‘ variable.

Chúng tôi cũng có thể làm điều đó bằng cách sử dụng câu lệnh từ nhập từ nhập khẩu. Hãy nhìn vào nó;“from import ” statement. Take a look to it;

import A
import B
import C
3

import A
import B
import C
4

Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

Nhập tất cả các lớp từ một tệp khác

Trong phần này, chúng tôi sẽ thảo luận rằng chúng tôi có thể nhập tất cả các lớp cùng một lúc từ một tệp khác. Đôi khi, đó là kịch bản cần thiết để nhập tất cả các lớp từ các tệp khác. Trong trường hợp đó, chúng tôi sử dụng câu lệnh từ nhập từ nhập từ *. Chúng ta có thể đọc nó như từ nhập file_name. Nó có nghĩa là chúng tôi đã nhập tất cả các lớp có sẵn từ tệp đã cho. Hãy cùng nhìn vào ví dụ của nó.from import *” statement. We can read it as from file_name import all. It means that we imported all the available classes from the given file. Let’s look at its example.

application/module1/file1.py

import A
import B
import C
6

import A
import B
import C
0

import A
import B
import C
8

import A
import B
import C
9

Nhập các lớp từ một thư mục khác

Trong ví dụ này, chúng tôi sẽ sử dụng lớp ArithMeticOperations trong File3.py i.e nằm trong một thư mục khác i.e Module1. Nhưng trước khi làm điều đó, chúng tôi phải bao gồm tệp __init__.py trong Module1, nói với trình thông dịch rằng mô -đun nằm trong cùng một gói.__init__.py file in module1 which tells the interpreter that the module is within the same package.

Chúng tôi cũng phải chỉ định đường dẫn của Module1. Đối với điều đó, chúng tôi sẽ sử dụng mô -đun SYS SYS. Hãy cùng nhìn vào mã.

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
0

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
1

‘Sys.path.insert (0 ,, ..

Nhập các lớp từ các thư viện được xác định trước

Trong ví dụ trên, chúng tôi đã sử dụng Sys Sys, một thư viện được xác định trước và chúng tôi muốn nhập nó và sử dụng các chức năng của nó.

sys.path.insert (); Chúng tôi có thể hiểu rằng chúng tôi muốn sử dụng phương thức chèn từ lớp đường dẫn có trong mô -đun SYS. Sử dụng các phụ thuộc và mô -đun như vậy làm cho các tác phẩm của chúng tôi dễ dàng hơn vì chúng tôi không cần phải viết mã cho các chức năng đó một cách rõ ràng. Chúng tôi chỉ cần kiến ​​thức về gói đã cho và cách sử dụng nó.; We can understand, that we want to use the insert method from the path class that is present in the sys module. Using such dependencies and modules make our works easier as we don’t need to write code for those function explicitly. We just need the knowledge of the given package and how to use it.

Câu hỏi thường gặp

Lớp nhập Python từ một tệp khác không hoạt động

Trong trường hợp này, vấn đề nằm trong tham chiếu của lớp nguồn bạn muốn nhập. Câu trả lời cho câu hỏi này phụ thuộc vào các điều kiện khác nhau mà bạn muốn nhập tệp. Chúng tôi đã thảo luận về tất cả những điều trên và bạn có thể tham khảo chúng theo điều kiện của bạn.

Làm thế nào để sử dụng __Import__ để nhập một lớp từ các tệp khác trong Python?

Chúng ta có thể sử dụng mã sau trong File2.py để nhập lớp từ File1 một cách linh hoạt.

lớp Dynamic_Import:

def __init __ (self, module_name, class_name):

#__Init__ Phương thức được sử dụng để nhập mô -đun lấy tên mô -đun làm mô -đun tham số = __Import __ (module_name)
module = __import__(module_name)

# getAttr () được sử dụng để nhập tên lớp Mẫu mô -đun mà chúng tôi đã nhập class_nm = getattr (mô -đun, class_name) data = class_nm.get_sum (class_nm, 3,8) in (dữ liệu)
class_nm = getattr(module,class_name)
data= class_nm.get_sum(class_nm,3,8)
print(data)

obj = Dynamic_Import (Hồi File1, arithmeticoperations

Làm thế nào để nhập lớp động?

Chúng ta có thể nhập lớp động bằng cách sử dụng hàm __Import__ hàm ma thuật hoặc mô -đun imp. Xem nó bằng một ví dụ;__import__ magic function or imp module.
See it with an example;

Nhập khẩu SYS IMPIMPORT
import sys

#DODNAMIC INTIRTDEF Dynamic_imp (Tên, Class_Name): # Imp.Find_Module () Trả về đường dẫn và mô tả của mô -đun đã cho

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
6
def dynamic_imp(name, class_name):
# imp.find_module() returns the path and description of given module
import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
6

#imp.load_module () Trả về lớp hoặc gói

import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
7
import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
8
import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
9
import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
7
import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
8
import os, sys

path = os.path.dirname(os.path.abspath(__file__))

for py in [f[:-3] for f in os.listdir(path) if f.endswith('.py') and f != '__init__.py']:
    mod = __import__('.'.join([__name__, py]), fromlist=[py])
    classes = [getattr(mod, x) for x in dir(mod) if isinstance(getattr(mod, x), type)]
    for cls in classes:
        setattr(sys.modules[__name__], cls.__name__, cls)
9

if name == Main Mainname == “main“:
mod, modCl = dynamic_imp(“file1 “,”addNumbers”)
modCl.addNumbers(1, 2)

Làm cách nào để nhập một lớp từ một máy tính xách tay Jupyter khác?

# Chạy lệnh sau! Cài đặt PIP IPynb
!pip install ipynb

# Bạn có thể nhập các máy tính xách tay khác bằng cách sử dụng từ ipynb.fs.full. nhập khẩu *
from ipynb.fs.full. import *

Sự kết luận

Vì vậy, hôm nay chúng tôi đã xem xét làm thế nào chúng tôi có thể nhập các lớp từ các tệp hoặc thư mục khác. Chúng tôi cũng có được kiến ​​thức về lập trình mô -đun và tuyên bố nhập khẩu. Chúng tôi đã xem xét, lập trình mô -đun đã thay đổi cách tiếp cận lập trình và làm cho nó dễ dàng hơn.Modular Programming and Import Statement. We looked, Modular programming changed the approach of programming and made it easier.

Tôi hy vọng bài viết này đã giúp bạn. Tiếp tục hỗ trợ. Cảm ơn!

Xu hướng các bài báo Python

  • Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

    [Đã sửa] ModulenotFounderror: Không có mô -đun có tên PyCoCotools

    ● Ngày 28 tháng 10 năm 2022October 28, 2022

  • Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

    Tạo khóa đối xứng OpenSSL bằng Python

    Bởi Vishnu Venkatesh ● Ngày 11 tháng 10 năm 2022October 11, 2022

  • Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

    Gingerit: Lỗi ngữ pháp chính xác bằng cách sử dụng Python

    bởi Yugmil Patel ● Ngày 7 tháng 10 năm 2022October 7, 2022

  • Hướng dẫn python import all classes from directory - python nhập tất cả các lớp từ thư mục

    A-Z của Make ability.txt in Python

    bởi Vishnu Venkatesh ● Ngày 7 tháng 10 năm 2022October 7, 2022

Bạn có thể nhập các lớp học trong Python không?

Nhập một lớp cụ thể bằng cách sử dụng lệnh nhập mà bạn chỉ cần tạo một lớp khác. Tệp PY giống như myfile.py và biến lớp học của bạn. Sau đó, trong tệp chính chỉ cần nhập lớp bằng dòng lệnh từ hình vuông nhập khẩu myfile. You just have to make another . py file just like MyFile.py and make the class your desired name. Then in the main file just import the class using the command line from MyFile import Square.

__ tất cả __ có nghĩa là gì trong Python?

Trong tệp __init__.py của gói __all__ là danh sách các chuỗi có tên của các mô -đun công khai hoặc các đối tượng khác.Những tính năng đó có sẵn để nhập khẩu ký tự đại diện.Như với các mô-đun, __all__ tùy chỉnh * khi nhập cảnh đại diện từ gói.a list of strings with the names of public modules or other objects. Those features are available to wildcard imports. As with modules, __all__ customizes the * when wildcard-importing from the package.

__ nhập __ làm gì trong Python?

__Import __ () trong mô -đun Python giúp đưa mã có mặt trong một mô -đun khác bằng cách nhập hàm hoặc mã hoặc tệp bằng cách nhập phương thức Python.Nhập trong Python trả về đối tượng hoặc mô -đun mà chúng tôi đã chỉ định trong khi sử dụng mô -đun nhập.helps in getting the code present in another module by either importing the function or code or file using the import in python method. The import in python returns the object or module that we specified while using the import module.

Bạn có thể nhập tất cả trong Python không?

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.Nhập báo cáo xuất hiện ở đầu tệp Python, bên dưới bất kỳ bình luận nào có thể tồn tại.Điều này là do nhập các mô -đun hoặc gói ở đầu tệp làm cho cấu trúc của mã của bạn rõ ràng hơn.. import statements appear at the top of a Python file, beneath any comments that may exist. This is because importing modules or packages at the top of a file makes the structure of your code clearer.