Làm cách nào để chuyển dữ liệu từ tệp python này sang tệp python khác?
Deepanshu thành lập ListenData với một mục tiêu đơn giản - Làm cho các phân tích trở nên dễ hiểu và dễ theo dõi. Ông có hơn 10 năm kinh nghiệm trong lĩnh vực khoa học dữ liệu. Trong nhiệm kỳ của mình, ông đã làm việc với các khách hàng toàn cầu trong nhiều lĩnh vực khác nhau như Ngân hàng, Bảo hiểm, Cổ phần tư nhân, Viễn thông và Nhân sự Show
Python cung cấp các mô-đun tích hợp và dễ dàng để sao chép tệp từ nguồn đến đích. Mô-đun (với) cũng đảm nhiệm việc đóng luồng tệp một cách nhẹ nhàng và đảm bảo tài nguyên được dọn sạch khi mã sử dụng tài nguyên tệp kết thúc thực thi Câu lệnh with làm rõ mã mà trước đây sẽ sử dụng try. các khối cuối cùng để đảm bảo quá trình dọn dẹp mã được thực thi Nhưng trước khi chúng ta bắt đầu, đây là một mẫu đơn giản mà bạn có thể sử dụng để chạy một tập lệnh Python từ một tập lệnh khác (đối với các tập lệnh Python được lưu trữ trong cùng một thư mục) import script_name_to_call Các bước để chạy một tập lệnh Python từ một tập lệnh khácBước 1. Đặt các tập lệnh Python trong cùng một thư mụcĐể bắt đầu, hãy đặt các tập lệnh Python của bạn vào cùng một thư mục Ví dụ: giả sử rằng hai tập lệnh Python (được gọi là python_1 và python_2) được lưu trữ trong cùng một thư mục python_1 Mục tiêu cuối cùng là chạy tập lệnh python_2 từ tập lệnh python_1 Bước 2. Thêm cú phápTiếp theo, thêm cú pháp vào từng tập lệnh của bạn Chẳng hạn, hãy thêm cú pháp sau vào tập lệnh python_1 import python_2 print('what are you up to?') Ở đâu
Bây giờ hãy thêm cú pháp vào tập lệnh python_2 print('hello world') Trong trường hợp này, biểu thức 'hello world' sẽ được in khi chạy tập lệnh thứ hai Lưu ý rằng trước tiên bạn phải lưu cú pháp đã được ghi trong tập lệnh python_2 trước khi gọi nó từ tập lệnh khác Bước 3. Chạy một tập lệnh Python từ một tập lệnh khácBây giờ, bạn sẽ cần chạy tập lệnh từ hộp python_1 để gọi tập lệnh thứ hai Lưu ý rằng kết quả của tập lệnh python_2 sẽ được hiển thị trước và chỉ sau đó kết quả của tập lệnh python_1 mới được hiển thị
Gọi một biến cụ thể từ một tập lệnh Python này sang tập lệnh khácBây giờ chúng ta hãy xem cách gọi một biến cụ thể (mà chúng ta sẽ gọi là 'x') từ tập lệnh python_2 vào tập lệnh python_1 Trong trường hợp đó, bạn sẽ cần chỉnh sửa cú pháp trong tập lệnh python_1 thành như sau import python_2 as p2 print(p2.x) Tiếp theo, gán một giá trị (e. g. , 'hello world') thành biến 'x' trong tập lệnh python_2 x = 'hello world' Đừng quên lưu các thay đổi trong tập lệnh python_2 Cuối cùng, hãy chạy cú pháp từ tập lệnh python_1 và bạn sẽ nhận được '7', đây thực sự là tổng của hai biến Lỗi cú pháp. (lỗi unicode) codec 'unicodeescape' không thể giải mã byte ở vị trí 2-3. rút ngắn \UXXXXXXX thoát Trong bối cảnh ví dụ của chúng tôi, mã hoàn chỉnh sẽ trông như thế này import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target) Nếu bạn chạy mã bằng Python (được điều chỉnh theo đường dẫn của bạn), bạn sẽ thấy rằng tệp CSV 'sản phẩm' sẽ được sao chép vào thư mục Test_2 Ngoài ra, bạn có thể sao chép một tệp có tên mới Chẳng hạn, hãy sao chép tệp CSV gốc (có tên tệp là ‘products‘) sang vị trí mới có tên tệp mới (‘new_products‘) import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\new_products.csv' shutil.copyfile(original, target) Sau đó, tên tệp mới (được gọi là 'new_products') sẽ được sao chép vào vị trí đích (thư mục Test_2) Các nguyên tắc tương tự sẽ áp dụng cho các loại tệp khác. Chẳng hạn, giả sử rằng tệp JPG có tên 'hình ảnh' được lưu trữ trong thư mục Test_1 Chúng ta sẽ xem xét một số tùy chọn khác nhau mà bạn có để di chuyển tệp xung quanh bằng Python. Ngoài ra còn có một ví dụ nhanh về cách bạn có thể sử dụng thư viện x = 'hello world'8 và 0 để dọn dẹp thư mục tải xuống của mình trong phần đầu tiên. Vì vậy, nếu bạn là người cần một thứ như thế trong đời, thì hãy tiếp tục đọclựa chọn 1. đóng cửa. di chuyển()Ví dụ hiển thị trong phần giới thiệu sử dụng hàm 1 từ thư viện x = 'hello world'8. Chức năng này thực hiện những gì bạn mong đợi và di chuyển các tệp từ vị trí này sang vị trí khác, như sau ________số 8 import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0 hoạt động bằng cách trước tiên tạo một bản sao của tệp với đường dẫn được xác định bởi 4 và lưu trữ bản sao ở vị trí mới, 5. Cuối cùng, sau khi tạo thành công bản sao, Python sẽ xóa tệp gốc có tại 4Trong trường hợp tệp gốc được bảo vệ, import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0 sẽ tạo một bản sao của tệp ở vị trí mới, nhưng Python sẽ không thể xóa tệp gốc Hầu hết mọi người có các thư mục tải xuống khá lộn xộn. Vì vậy, hãy xem một ví dụ thực tế về cách chúng ta có thể sử dụng import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0 để lưu trữ tất cả các hình ảnh trong một thư mục tải xuống trong một thư mục mới có tên là 9import python_2 print('what are you up to?')5 Chạy tập lệnh này bên trong thư mục tải xuống sẽ di chuyển bất kỳ tệp nào có phần mở rộng import python_2 print('what are you up to?')50 hoặc import python_2 print('what are you up to?')51 trong thư mục sang thư mục import python_2 print('what are you up to?')52. Sử dụng import python_2 print('what are you up to?')53 trả về danh sách tất cả các tệp trong thư mục. Sau đó, sử dụng import python_2 print('what are you up to?')54, thư mục import python_2 print('what are you up to?')52 được tạo. Sử dụng import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0, Python sau đó có thể di chuyển tất cả các tệp trong danh sách import python_2 print('what are you up to?')57 của chúng tôi sang thư mục mới. Quá trình này được thể hiện trong sơ đồ dưới đây Có rất nhiều chỗ để cải thiện ở đây. Ví dụ: chúng tôi có thể nâng cấp khả năng hiểu danh sách của mình để bao gồm nhiều loại hình ảnh hơn. Chúng ta cũng nên viết mã trong nhánh import python_2 print('what are you up to?')58 để xem thư mục import python_2 print('what are you up to?')52 có tồn tại trước khi chạy print('hello world')50 không. Cũng không có lý do gì chúng tôi không thể mở rộng tập lệnh này để tạo các thư mục riêng cho tệp PDF, tệp thực thi và bất kỳ thứ gì khác nằm trong thư mục tải xuống của bạn. Lựa chọn 2. hệ điều hành. đổi tên()Thư viện 0 cũng có một số tùy chọn để di chuyển tệp, một trong số đó là print('hello world')52. Chức năng của print('hello world')52 hơi khác một chút so với import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0 Thay vì sao chép tệp được đề cập, print('hello world')55 thay đổi đường dẫn của tệp, tự động thay đổi vị trí tệp. Xem bên dưới để biết ví dụ về cách chúng tôi có thể áp dụng chức năng print('hello world')5 print('hello world')56 cũng hoạt động. Mặc dù chức năng được gọi là print('hello world')57, nhưng nó cũng di chuyển các tệp bằng cách đổi tên chúng. print('hello world')56 có thể được triển khai với một mẫu giống hệt với import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0 và print('hello world')52 5print('hello world')56 và print('hello world')52 đều có thể được sử dụng để thay đổi tên tệp hoặc thư mục. print('hello world')52 báo cáo lỗi khác nhau tùy thuộc vào hệ điều hành bạn đang chạy Trong khi đó, print('hello world')56 sẽ báo cáo lỗi thống nhất trên các hệ thống khác nhau, đây có thể là lựa chọn tốt hơn khi làm việc trên một chương trình cần khả năng tương thích với các hệ điều hành khác nhau Tùy chọn 3. đường dẫn. Đường dẫn(). đổi tên()Đối với cách tiếp cận hướng đối tượng hơn để di chuyển tệp, 55 cũng là một tùy chọnBằng cách sử dụng hàm 56, Python tạo một đối tượng 57. Phương thức print('hello world')55 sau đó thay đổi đường dẫn của đối tượng, tương tự như cách hoạt động của print('hello world')52 import python_2 as p2 print(p2.x)5 Chúng tôi cũng có thể áp dụng import python_2 as p2 print(p2.x)50 cho tập lệnh được tạo trước đó để di chuyển hình ảnh ra khỏi thư mục import python_2 as p2 print(p2.x)51 của chúng tôi. Xem bên dưới để biết ví dụ về điều này import python_2 as p2 print(p2.x)8 Dưới đây là bảng so sánh sự khác biệt về tốc độ của ba cách tiếp cận import python_2 as p2 print(p2.x)9 Ngoài gõmicroseconds1os. đổi tên()50. 550shut. di chuyển()54. 582Pathlib. Đường dẫn()63. 74 Bản tóm tắtBạn có một số tùy chọn khi di chuyển tệp xung quanh. import shutil original = r'C:\Users\Ron\Desktop\Test_1\products.csv' target = r'C:\Users\Ron\Desktop\Test_2\products.csv' shutil.copyfile(original, target)0, print('hello world')52 và print('hello world')56 đều là những cách tiếp cận tuyệt vời, với cả ba cách tiếp cận này đều sử dụng các đối số import python_2 as p2 print(p2.x)55. Đối với cách tiếp cận hướng đối tượng hơn, bạn cũng có thể sử dụng import python_2 as p2 print(p2.x)50, cung cấp 56 với 4 và print('hello world')55 với 5Bắt đầu học miễn phí Nhận thông tin cập nhật trong hộp thư đến của bạnTham gia cùng hơn 7.500 người học khoa học dữ liệu Bài viết gần đâyƯu đãi khóa học tốt nhất cho Thứ Sáu Đen và Thứ Hai Điện Tử 2022Hàm sigmoidchấm sản phẩm7 khóa học về trí tuệ nhân tạo (AI) tốt nhất năm 2022Các khóa học Python tốt nhất theo phân tích dữ liệu Trong số khoảng 3000 dịch vụ, đây là những khóa học Python tốt nhất theo phân tích này xem bài viếtNhận thông tin cập nhật trong hộp thư đến của bạnTham gia cùng hơn 7.500 người học khoa học dữ liệu Gặp gỡ các tác giảNhà khoa học dữ liệu Alfie Grace Alfie tốt nghiệp Thạc sĩ Kỹ thuật Cơ khí tại Đại học College London. Anh ấy hiện đang làm Nhà khoa học dữ liệu tại Square Enix. Tìm anh ấy trên LinkedIn |