Nhập và từ trong Python là gì?

Ghi chú. Khi nhập bằng từ khóa from, không sử dụng tên mô-đun khi đề cập đến các thành phần trong mô-đun. Thí dụ. person1["age"], không phải mymodule.person1["age"]

Việc sử dụng câu lệnh nhập trong tệp Python của chúng tôi là khá thường xuyên. Ngay cả đối với những Pythonistas có kinh nghiệm, quá trình nhập có thể gây nhầm lẫn, vì không có phương pháp duy nhất nào đảm bảo rằng quá trình nhập sẽ luôn hoạt động

Mặc dù bạn có thể đặt các dự án đơn giản vào một tệp, nhưng hầu hết các dự án phát triển Python sẽ yêu cầu nhiều tệp để quản lý chúng. Điều đó có nghĩa là bạn cần một cách để nhập tệp này vào tệp khác. Tuy nhiên, nhiều Pythonistas thấy việc nhập tệp khó hiểu. May mắn thay, thật dễ dàng nếu bạn biết sự khác biệt giữa các câu lệnh nhập Python khác nhau

Nhập khẩu là gì?

Nhập đề cập đến việc cho phép tệp Python hoặc mô-đun Python truy cập tập lệnh từ một tệp hoặc mô-đun Python khác. Bạn chỉ có thể sử dụng các chức năng và thuộc tính mà chương trình của bạn có thể truy cập. Chẳng hạn, nếu bạn muốn sử dụng các chức năng toán học, trước tiên bạn phải nhập gói toán học. Điều này là do bạn phải xác định mọi thứ bạn muốn sử dụng trong Python trước khi sử dụng chúng

Ví dụ, Python sẽ cung cấp một ____0_______1 cho đoạn mã sau

myPi = math.pi

Điều này là do cả đối tượng

import math

myPi = math.pi
print myPi
2 cũng như các thuộc tính và phương thức của nó đều không có sẵn cho chính ngôn ngữ đó. Để sử dụng đối tượng
import math

myPi = math.pi
print myPi
2, trước tiên bạn phải nhập nó

import math

myPi = math.pi
print myPi

Câu lệnh

import math

myPi = math.pi
print myPi
4 thêm đối tượng vào phạm vi hiện tại của chương trình của bạn

Nhập khẩu hoạt động như thế nào

Các câu lệnh

import math

myPi = math.pi
print myPi
4 thực hiện rất nhiều việc để nhập tệp hoặc mô-đun. Đầu tiên, họ tìm kiếm mô-đun hoặc gói của bạn trong
import math

myPi = math.pi
print myPi
6, nơi Python lưu trữ mã đã nhập trước đó của bạn. Nếu Python không thể tìm thấy mô-đun ở đó, thì nó sẽ tìm kiếm nó trong Thư viện chuẩn Python. Nếu Python vẫn không thể tìm thấy mô-đun, nó sẽ đi qua toàn bộ không gian lưu trữ của bạn, bắt đầu với thư mục hiện tại và những thứ được liệt kê trong
import math

myPi = math.pi
print myPi
7 của bạn. Nếu tìm thấy mô-đun ở những nơi này, nó sẽ thêm mô-đun đó vào chương trình của bạn, nếu không, nó sẽ đưa ra một
import math

myPi = math.pi
print myPi
8

Cú pháp báo cáo nhập khẩu

Để nhập trực tiếp một mô-đun, bạn chỉ cần đặt tên của mô-đun hoặc gói sau từ khóa

import math

myPi = math.pi
print myPi
4. Xin lưu ý rằng câu lệnh này có phân biệt chữ hoa chữ thường

import mymodule

Tuy nhiên, Python cung cấp một cú pháp phức tạp hơn để nhập mã. Định dạng thứ hai này cũng bao gồm từ khóa

import mymodule
0

from mypackage import mymodule

Ở định dạng này, bạn chỉ định cả mô-đun hoặc mã bạn muốn cùng với vị trí của nó. Bạn đặt tên mã, mô-đun hoặc gói con của bạn cho

import mymodule
1 và vị trí của nó cho
import mymodule
2. Một câu lệnh nhập như vậy là tuyệt vời nếu bạn chỉ muốn nhập một số mã từ gói được đề cập chứ không phải chính gói đó

Bạn thậm chí có thể đổi tên mô-đun bằng cách bao gồm từ khóa

import mymodule
3

import mymodule as oMyFunction

Bạn cũng có thể sử dụng dấu hoa thị [

import mymodule
4] làm ký tự đại diện. Câu lệnh sau sẽ nhập mọi chức năng và thuộc tính có trong gói
import math

myPi = math.pi
print myPi
2

from math import *

Bất kể cú pháp là gì, bạn phải luôn tuân theo khuyến nghị

nhập khẩu tuyệt đối

Nhập tuyệt đối bao gồm toàn bộ đường dẫn đến tập lệnh của bạn, bắt đầu từ thư mục gốc của chương trình. Mặc dù bạn phải tách từng thư mục theo một khoảng thời gian, nhưng bạn có thể có nó miễn là bạn cần

Sau đây là các ví dụ về nhập khẩu tuyệt đối

from package1.firstmodule import firstmodule
import package1.secondmodule.myfunction
Nhập khẩu tuyệt đối Ưu điểm và nhược điểm

Không giống như các ngôn ngữ khác, hầu hết các nhà phát triển Python thích sử dụng nhập khẩu tuyệt đối hơn so với anh em họ hàng của họ. Điều này là do nhập khẩu tuyệt đối làm cho nó thực sự rõ ràng những gì bạn đang cố gắng làm. Vị trí thực tế của các tệp của bạn nằm ngay trong mã của bạn. Trên thực tế, bạn có thể sử dụng chúng ở bất kỳ đâu trong mã của mình. Họ sẽ chỉ làm việc

Tuy nhiên, nhập khẩu tuyệt đối có thể khá lâu. Nếu dự án của bạn có các gói con trong các gói con trong các gói con, câu lệnh nhập của bạn có thể mở rộng ra ngoài một dòng mã. Khi điều đó xảy ra, tốt hơn hết là bạn nên sử dụng nhập khẩu tương đối

Bạn cũng có thể phát hiện ra sự cố khi khởi động chương trình của mình bằng các tệp khởi động khác nhau. Trình thông dịch Python chỉ khai báo thư mục hiện tại của tệp bắt đầu là thư mục gốc gói

import mymodule
6 của nó. Điều này tốt nếu bạn chỉ tải chương trình của mình bằng các tệp từ thư mục gốc. Điều này là do
import mymodule
6 sẽ tĩnh trong suốt tập lệnh của bạn

Tuy nhiên, tình hình sẽ thay đổi khi bạn bắt đầu chương trình của mình từ một thư mục con hoặc trong bất kỳ tình huống nào khác mà

import mymodule
6 của bạn có thể thay đổi. Sau đó, "thư mục gốc" của bạn là thư mục con. Bởi vì bạn không thể sử dụng nhập ẩn [như chúng ta sẽ thấy bên dưới], bất kỳ tệp nào bên ngoài thư mục con sẽ không thể truy cập được vào chương trình của bạn

Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó

Bạn có hai cách giải quyết cho việc này. Bạn có thể bắt đầu tập lệnh thư mục con của mình dưới dạng mô-đun đã nhập hoặc bạn có thể thêm trực tiếp

import mymodule
6 vào mã của mình

Ví dụ

  • Nhập mô-đun dưới dạng thời gian chạy.
    from mypackage import mymodule
    
    0
  • nối thêm hệ thống. đường dẫn trước khi nhập tệp của bạn
import os, sys
sys.path.append[os.path.dirname[os.path.dirname[os.path.realpath[__file__]]]]
from packA.subA import sa2

Nhập khẩu tương đối

Với nhập tương đối, bạn chỉ xác định vị trí tài nguyên của mình có liên quan đến tệp mã hiện tại. Bạn có thể thực hiện việc này một cách ngầm định hoặc rõ ràng, mặc dù việc nhập tương đối ngầm định đã bị xóa trong Python 3

Đối với cú pháp, nhập tương đối sử dụng ký hiệu dấu chấm. Các dấu chấm đơn đại diện cho thư mục của tập lệnh hiện tại. Hai dấu chấm đại diện cho thư mục mẹ. Ba chấm có nghĩa là ông bà, v.v. Bạn có thể quen thuộc với hệ thống này nếu bạn sử dụng hệ điều hành giống UNIX hoặc bảng điều khiển Windows

Sau đây là các ví dụ về nhập khẩu tương đối

import other
from . import some_class
from .subA import sa1
from .some_module import some_class
import some_function
import subA.sa1
Nhập khẩu tương đối và ưu điểm và nhược điểm của chúng

Nhập khẩu tương đối hiếm khi tăng chừng nào nhập khẩu tuyệt đối. Họ thậm chí có thể biến một tuyên bố tuyệt đối dài đến nực cười thành một thứ đơn giản như

import math

myPi = math.pi
print myPi
0

Tuy nhiên, chúng cũng ẩn đường dẫn đến các mô-đun của bạn. Điều này có thể ổn nếu bạn là nhà phát triển duy nhất, nhưng sẽ lộn xộn nếu bạn là thành viên của nhóm phát triển nơi cấu trúc thư mục thực tế có thể thay đổi

Nhập khẩu nào để sử dụng?

Trừ khi bạn đang làm việc trên một dự án lớn với nhiều lớp gói phụ, bạn nên luôn sử dụng nhập khẩu tuyệt đối. Bằng cách đó, mã của bạn sẽ dễ dàng được hiểu bởi bất kỳ ai nhìn vào mã đó, kể cả chính bạn nếu bạn quay lại mã để cập nhật sau. Ngay cả khi bạn có những con đường dài, bạn vẫn nên cố gắng viết chương trình của mình để chỉ sử dụng các câu lệnh tuyệt đối để đơn giản hóa mã và cuộc sống của bạn

Phần kết luận

Giống như bất kỳ ngôn ngữ lập trình hiện đại nào khác, Python cho phép bạn nhập mã từ các tệp hoặc mô-đun khác. Tuy nhiên, điều này có thể dẫn đến một quy trình khó hiểu và dễ xảy ra lỗi, trừ khi bạn hiểu các khái niệm đằng sau hệ thống nhập

Trong bài viết này, chúng ta đã xem xét các cách khác nhau để nhập mã vào chương trình Python của mình, bao gồm nhập tuyệt đối và tương đối. Chúng tôi cũng so sánh ưu và nhược điểm của từng loại, chúng có lợi thế trong các trường hợp sử dụng khác nhau

Sự khác biệt giữa từ và nhập trong Python là gì?

Sử dụng from import khi bạn muốn tránh phải nhập đi nhập lại tên mô-đun . Nói cách khác, sử dụng từ nhập khi đề cập đến một thành viên của mô-đun nhiều lần trong mã. Sử dụng nhập khi bạn muốn sử dụng nhiều thành viên của mô-đun.

Nhập từ có nghĩa là gì trong Python?

Trong Python, bạn sử dụng từ khóa nhập để cung cấp mã trong một mô-đun trong một mô-đun khác . Nhập trong Python rất quan trọng để cấu trúc mã của bạn một cách hiệu quả. Sử dụng nhập đúng cách sẽ giúp bạn làm việc hiệu quả hơn, cho phép bạn sử dụng lại mã trong khi vẫn duy trì dự án của mình.

Việc sử dụng từ trong Python là gì?

Từ khóa from được sử dụng để chỉ nhập một phần được chỉ định từ một mô-đun .

nhập trong ví dụ Python là gì?

Mã Python trong một mô-đun có quyền truy cập vào mã trong một mô-đun khác bằng quá trình nhập mã đó . 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. Các chức năng như importlib.

Chủ Đề