63
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Tôi đã xác định một hàm Hello World trong một tệp có tên là 'Chức năng.ipynb'. Bây giờ, tôi muốn nhập các chức năng trong một tệp khác bằng cách sử dụng "Chức năng nhập". Tôi chắc chắn rằng họ nằm trong cùng một thư mục. Tuy nhiên, nó vẫn cho thấy rằng "Bộ nhập khẩu: Không có mô -đun có tên là chức năng". Nhân tiện, tôi đang sử dụng Notebook Jupyter. Cảm ơn rất nhiều!
Khi được hỏi ngày 22 tháng 5 năm 2017 lúc 14:58May 22, 2017 at 14:58
1
Bạn sẽ muốn sử dụng Gói IPYNB/nhà nhập mô mô -đun. Bạn sẽ cần cài đặt nó:
from ipynb.fs.full.my_functions import factorial
4.Tạo một cuốn sổ có tên
from ipynb.fs.full.my_functions import factorial
5. Thêm một chức năng đơn giản cho nó.def factorial[n]:
if n == 0:
return 1
else:
return n * factorial[n-1]
Sau đó, tạo một máy tính xách tay ipython thứ hai và nhập chức năng này với:
from ipynb.fs.full.my_functions import factorial
Sau đó, bạn có thể sử dụng nó như thể nó nằm trong cùng một máy tính xách tay ipython:
testing = factorial[5]
Xem tài liệu để biết thêm chi tiết.
Drhagen
7.2977 Huy hiệu vàng51 Huy hiệu bạc71 Huy hiệu đồng7 gold badges51 silver badges71 bronze badges
Đã trả lời ngày 16 tháng 4 năm 2018 lúc 15:16Apr 16, 2018 at 15:16
David Rinckdavid RinckDavid Rinck
6.1074 Huy hiệu vàng44 Huy hiệu bạc60 Huy hiệu Đồng4 gold badges44 silver badges60 bronze badges
8
Đối với trường hợp sử dụng của tôi, nhập IPNYB không hoạt động vì một số lý do. Tôi đã phải sử dụng Jupyter Notebook Cell Cell để nhập chức năng của mình .:
%run MyOtherNotebook.ipynb #this is were my function was stored
function[df] #then simply run the function
Đã trả lời ngày 28 tháng 9 năm 2021 lúc 7:53Sep 28, 2021 at 7:53
Câu trả lời của @David Rinck đã giải quyết vấn đề, nhưng tôi muốn khuyên bạn nên thêm Boilerplate
from ipynb.fs.full.my_functions import factorial
6 để bảo vệ các tập lệnh mà bạn không muốn vô tình gọi. Nó hoạt động giống như trong một tệp Python thông thường.Nếu một tệp .ipynb a.ipynb được nhập bởi một B.Ipynb khác
from ipynb.fs.full.a import factorial
from ipynb.fs.full.my_functions import factorial
7 trong a.ipynb sẽ là from ipynb.fs.full.my_functions import factorial
8 chứ không phải from ipynb.fs.full.my_functions import factorial
9.Đã trả lời ngày 15 tháng 10 năm 2021 lúc 6:15Oct 15, 2021 at 6:15
Lerner Zhanglerner ZhangLerner Zhang
5.5202 Huy hiệu vàng42 Huy hiệu bạc58 Huy hiệu Đồng2 gold badges42 silver badges58 bronze badges
Bạn có thể lưu các hàm.ipynb dưới dạng hàm.py và có thể nhập tệp dưới dạng
testing = factorial[5]
0. Bây giờ bạn có thể sử dụng bất kỳ chức năng nào được xác định trong tệp chức năng là testing = factorial[5]
1 cho ví dụ, nếu thêm là một hàm,functions.add[5,3]
Sau khi nhập sẽ hoạt động.
Đã trả lời ngày 1 tháng 8 năm 2020 lúc 18:43Aug 1, 2020 at 18:43
0
Các chức năng do người dùng xác định có thể được gọi từ các tệp khác. Một hàm có thể được gọi và chạy trong một tệp khác với tệp nơi xác định hàm. Nếu một tệp mới được gọi là myfunes.py được tạo và chứa hai định nghĩa hàm, Gọi các chức năng từ các tệp khác
2 và testing = factorial[5]
3, các hàm testing = factorial[5]
2 và testing = factorial[5]
3 có thể được sử dụng bởi một tập lệnh riêng biệt miễn là tên tệp và tên hàm được nhập trong tập lệnh riêng biệt trước tiên. Điều cần thiết là tệp chứa các định nghĩa hàm kết thúc trong phần mở rộng .py. Không có phần mở rộng .py, tệp nơi các chức năng được xác định không thể được nhập. Bên trong tệp myfuctions.py, hai chức năng được xác định bằng mã bên dưới.myfunctions.py is created and contains two function definitions, testing = factorial[5]
2 and testing = factorial[5]
3, the functions testing = factorial[5]
2 and testing = factorial[5]
3 can be used by a separate script as long as the file and function names are imported in the separate script first. It is essential that the file which contains the function definitions ends in the .py extension. Without a .py extension, the file where the
functions are defined can not be imported. Inside the file myfuctions.py, two functions are defined using the code below.testing = factorial[5]
# myfunctions.py
def plustwo[n]:
out = n + 2
return out
def falldist[t,g=9.81]:
d = 0.5 * g * t**2
return d
Tệp này, myfunes.py có thể được nhập vào một tập lệnh khác [một tệp .py khác] hoặc máy tính xách tay Jupyter.myfunctions.py can be imported into another script [another .py file], or Jupyter Notebook.
Hãy nhớ rằng tệp chứa các định nghĩa chức năng và tệp gọi các hàm phải nằm trong cùng một thư mục.
Để sử dụng các chức năng được viết trong một tệp bên trong một tệp khác bao gồm dòng nhập,
testing = factorial[5]
6. Lưu ý rằng mặc dù tên tệp phải chứa phần mở rộng .py, testing = factorial[5]
7 không được sử dụng như một phần của tên tệp trong quá trình nhập..py extension, testing = factorial[5]
7 is not used as part of the filename during import.Cú pháp chung để nhập và gọi hàm từ một tệp riêng biệt ở bên dưới:
from function_file import function_name
function_name[arguments]
Một ví dụ sử dụng cú pháp này với tệp myfifts.py và hàm
testing = factorial[5]
2 ở bên dưới:myfunctions.py file and the function testing = factorial[5]
2 is below: In [1]:
from myfunctions import plustwoNhiều chức năng có thể được nhập từ cùng một tệp bằng cách tách các chức năng được nhập với dấu phẩy. Cú pháp chung để nhập và gọi nhiều chức năng từ cùng một tệp là bên dưới:plustwo[3]
from function_file import function_name1, function_name2
function_name1[arguments]
function_name2[arguments]
Một ví dụ sử dụng cú pháp này với tệp myfifts.py và các chức năng
testing = factorial[5]
2 và testing = factorial[5]
3 dưới đây:myfunctions.py file and the functions testing = factorial[5]
2 and testing = factorial[5]
3 is below: In [2]:
from ipynb.fs.full.my_functions import factorial
0 Một cách khác để nhập và sử dụng các chức năng từ myFunctions.py vào một tập lệnh khác hoặc máy tính xách tay Jupyter là nhập toàn bộ tệp myfifts.py với %run MyOtherNotebook.ipynb #this is were my function was stored
function[df] #then simply run the function
1, sau đó gọi các chức năng với cú pháp bên dưới. from ipynb.fs.full.my_functions import factorial
1myfunctions.py into another script or Jupyter
notebook is to import the entire myfunctions.py file with %run MyOtherNotebook.ipynb #this is were my function was stored
function[df] #then simply run the function
1, then call the functions with the syntax below. from ipynb.fs.full.my_functions import factorial
1Một ví dụ sử dụng cú pháp này với tệp myfifts.py bên dưới.myfunctions.py file is below.
In [3]:
from ipynb.fs.full.my_functions import factorial
2In [4]:
from ipynb.fs.full.my_functions import factorial
3