Viết mảng 2D vào tệp văn bản python
Tôi muốn đọc mảng 2D từ tệp văn bản và muốn lưu trữ nội dung của mảng trong TTree Show
Tôi đang đính kèm tệp văn bản, trong đó tôi có khối lượng và TKE của các hạt được lưu trữ trong mảng 2D. Tôi muốn đọc nội dung của mảng và muốn lưu trữ khối lượng tương quan và TKE trong hai nhánh riêng biệt của TTree NumPy là dạng viết tắt của Numerical Python. Nó được sử dụng cho các loại hoạt động khoa học khác nhau trong python. Numpy là một thư viện rộng lớn trong python được sử dụng cho hầu hết mọi loại hoạt động khoa học hoặc toán học. Bản thân nó là một mảng là tập hợp các phương thức và hàm khác nhau để xử lý các mảng Viết một mảng nhiều chiều vào một tệp văn bảnCó thể coi mảng nhiều chiều là một mảng chứa nhiều hàng và nhiều cột Giả sử chúng ta được cung cấp một mảng nhiều chiều và chúng ta cần tìm một cách hiệu quả để ghi mảng này vào một tệp văn bản Nếu chúng ta muốn ghi dữ liệu vào đĩa để việc truy xuất dữ liệu dễ dàng dưới dạng mảng NumPy, chúng ta có thể sử dụng numpy. phương thức lưu (). Nếu chúng tôi muốn lưu nó thành định dạng mà con người có thể đọc được, chúng tôi cần sử dụng numpy. savetxt() các numpy. savetxt() cuộn cảm trên ndarrays với hơn 2 chiều. Đây có thể là do thiết kế, vì vốn dĩ không có cách nào được xác định để biểu thị các kích thước bổ sung trong tệp văn bản Bart, Quản lý tại ShopSmart (và lập trình viên Python bán thời gian), chịu trách nhiệm mua Số Xổ số cho nhóm của họ. Bart cần trợ giúp viết tập lệnh tạo số ngẫu nhiên và ghi chúng vào tệp văn bản phẳng bằng các hàm từ thư viện NumPy 💬 câu hỏi. Chúng ta sẽ viết mã để ghi dữ liệu này vào một tệp văn bản phẳng như thế nào? Chúng ta có thể hoàn thành nhiệm vụ này bằng một trong các tùy chọn sau
Sự chuẩn bịTrước khi tiếp tục, vui lòng đảm bảo thư viện NumPy đã được cài đặt trên máy tính. Bấm vào đây nếu bạn cần hướng dẫn Thêm mã sau vào đầu mỗi tập lệnh. Đoạn mã này sẽ cho phép mã trong bài viết này chạy không có lỗi import numpy as np import random Trong bài viết này nhập thư viện ngẫu nhiên để tạo số nguyên tùy ý cho số Xổ Số Phương pháp 1. Sử dụng savetxt() để viết Mảng 1D NumPyMột cách đơn giản để ghi mảng NumPy 1D vào tệp văn bản phẳng là sử dụng hàm import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 và chuyển các đối số thích hợp import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d") Ở trên, một mảng NumPy ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")6) được gọi và chuyển qua trình tạo số nguyên ngẫu nhiên ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")7). Hàm này sau đó được truyền ba (3) đối số. (bắt đầu, dừng, độ dài). Sau đó, bảy (7) số Xổ số ngẫu nhiên lưu vào import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")8 Tiếp theo, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")9 được gọi và truyền bốn (4) đối số sau
Nếu thành công, tệp nói trên nằm trong thư mục làm việc hiện tại chứa bảy (7) số nguyên ngẫu nhiên trên một dòng Nội dung tệp lotto_max = np.array(np.random.randint(1, 100, 8)) with open('lotto_max.txt', 'w') as fp: fp.write(','.join(map(str, lotto_max)))7 Hướng dẫn NumPy - Mọi thứ bạn cần biết để bắt đầu Xem video này trên YouTube Phương pháp 2. Sử dụng open(), map() và join() để viết Mảng NumPy 1DMột cách khác để ghi mảng NumPy 1D vào tệp văn bản phẳng là sử dụng import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")5 và viết nội dung bằng cách sử dụng import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")6 và import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")0 lotto_max = np.array(np.random.randint(1, 100, 8)) with open('lotto_max.txt', 'w') as fp: fp.write(','.join(map(str, lotto_max))) Ở trên, một mảng NumPy ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")6) được gọi và chuyển qua trình tạo số nguyên ngẫu nhiên ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")7). Hàm này sau đó được truyền ba (3) đối số. (bắt đầu, dừng, độ dài). Sau đó, tám (8) số Xổ số ngẫu nhiên lưu vào import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")13 Tiếp theo, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")5 được gọi để mở tệp đã chỉ định ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")15) ở chế độ ghi ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")16) và tạo Đối tượng tệp ( import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")17) 💡Lưu ý. Đối tượng tệp cho phép truy cập và thao tác với tệp Sau khi mở, điều sau đây xảy ra
Nếu thành công, tệp nói trên nằm trong thư mục làm việc hiện tại chứa tám (8) số nguyên ngẫu nhiên trên một dòng Nội dung tệp import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")84 Hàm open() trong Python – Hướng dẫn 80/20 bằng ví dụ Xem video này trên YouTube Phương pháp 3. Sử dụng savetxt() và reshape() để viết một mảng 1D NumPyĐể ghi mảng NumPy 1D vào tệp văn bản phẳng với cách hiển thị khác, hãy sử dụng import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 và import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")2 Đối với ví dụ này, Bart đã tạo hai (2) vé xổ số Pick5, được lưu vào mảng NumPy 1D. Hãy sử dụng import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")2 để giải quyết vấn đề import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")1 Ở trên, một mảng NumPy 1D được tạo với 10 số vé. Tuy nhiên, mỗi vé phải có năm (5) số. Hàm import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")2 sửa mảng ban đầu thành hai (2) hàng, mỗi hàng năm (5) phần tử. Kết quả lưu vào import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")89 Tiếp theo, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 được gọi và ba (3) đối số sau được truyền
Nếu thành công, tệp nêu trên nằm trong thư mục làm việc hiện tại Nội dung tệp import numpy as np import random44 Phương pháp 4. Sử dụng savetxt() để viết Mảng NumPy 2DĐể ghi một mảng NumPy 2D vào một tệp văn bản phẳng với màn hình hiển thị theo hàng, hãy sử dụng import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")8 Ở trên tạo ra một mảng 2D NumPy; . Kết quả lưu vào import numpy as np import random46 Tiếp theo, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 được gọi và ba (3) đối số sau được truyền
Nếu thành công, tệp nêu trên nằm trong thư mục làm việc hiện tại Nội dung tệp import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")31 Phương pháp 5. Sử dụng save() để viết Mảng 3D NumPyThật không may, các tệp văn bản phẳng không thể xử lý các mảng 3D NumPy. Do đó, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 được sử dụng trong các ví dụ trên sẽ không hoạt động ở đây và thực tế là tạo ra lỗi. Chức năng import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")4 sẽ cần được sử dụng import numpy as np import random4 Ở trên, tạo một mảng 3D NumPy. Kết quả lưu vào import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")34 Tiếp theo, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")2 được gọi và hai (2) đối số sau được truyền
Nếu thành công, tệp nêu trên nằm trong thư mục làm việc hiện tại Để xem nội dung tệp, hãy chạy đoạn mã sau import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")3 Để đọc trong tệp nhị phân, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")40 được gọi và các đối số sau được truyền
💡Lưu ý. Đối số, import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")43, cho phép tải mảng đối tượng đã chọn được lưu trữ trong tệp import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")44. Nội dung tệp import random lotto_649 = np.array(np.random.randint(1, 100, 7)) np.savetxt('lotto_649.txt', lotto_649, newline=' ', fmt="%d")45 Tóm lượcCác phương pháp ghi mảng NumPy này vào tệp văn bản phẳng sẽ cung cấp cho bạn đủ thông tin để chọn phương pháp tốt nhất cho yêu cầu viết mã của bạn Bạn có thể viết một mảng vào một tệp bằng Python không?Bạn chỉ có thể viết nó ra một tập tin trực tiếp. trong đó l1 là danh sách bạn đưa ra
Làm cách nào để chuyển đổi mảng np thành chuỗi?array_str() bằng Python. cục mịch. Hàm array_str() được sử dụng để biểu diễn dữ liệu của một mảng dưới dạng một chuỗi. Dữ liệu trong mảng được trả về dưới dạng một chuỗi. |