Computer >> Máy Tính >  >> Hệ thống >> Linux

Cách in đẹp một tệp JSON bằng Python

Cách in đẹp một tệp JSON bằng Python

Giống như nhiều ngôn ngữ lập trình khác, Python hoạt động tốt với dữ liệu JavaScript Object Notation (JSON). Nó có thể lấy dữ liệu này từ một số nguồn và làm việc với nó giống như bất kỳ tệp nào khác. Điều này rất hữu ích khi bạn muốn in một tệp JSON bằng Python.

Trong bài đăng này, chúng tôi chỉ cho bạn cách in một tệp JSON theo hai cách. Cả hai đều sẽ liên quan đến việc sử dụng Terminal và dòng lệnh, mặc dù bạn có thể không cần kiến ​​thức Python cho một trong số chúng.

Bản in đẹp là gì (Và tại sao bạn muốn sử dụng nó với tệp JSON)

Nói tóm lại, việc in ấn đẹp lấy dữ liệu ở định dạng thô và biến đổi nó thành thứ có thể đọc được. Nói cách khác, nó làm cho nó đẹp.

Cách in đẹp một tệp JSON bằng Python

Trong các trường hợp thông thường, bạn sẽ làm điều này với các tệp được kéo vào chương trình của bạn mà con người cần phải phân tích cú pháp. Thông thường, dữ liệu từ các định dạng tệp khác (chẳng hạn như tệp JSON) sẽ được “giảm thiểu”. Điều này loại bỏ tất cả khoảng trắng khỏi mã để làm cho nó gọn gàng hơn cho máy tính phân tích cú pháp.

Ví dụ:bạn có thể lấy dữ liệu cơ sở dữ liệu thô đã được rút gọn và chạy nó thông qua một tập lệnh để thêm thụt lề chính xác và định dạng khác. Từ đó, bạn có thể xuất nó cho người khác và làm việc với nó như bạn muốn.

Cách in đẹp một tệp JSON bằng Python

Dưới đây, chúng tôi chỉ cho bạn cách in một tệp JSON bằng Python. Đối với các ví dụ của chúng tôi, chúng tôi sử dụng NeoVim và :term được tích hợp sẵn yêu cầu. Tuy nhiên, không có lý do gì bạn không thể thực hiện việc này trực tiếp từ chính Terminal trong trình thông dịch Python.

1. Xác định tệp JSON của bạn

Đầu tiên, chúng tôi muốn có một số dữ liệu JSON để làm việc. Có hai cách tiếp cận bạn có thể thực hiện - bằng cách xác định dữ liệu trong tập lệnh Python của bạn hoặc thông qua tệp JSON. Chúng tôi cá rằng hầu hết dữ liệu sẽ đến từ một tệp, vì vậy đây sẽ là trọng tâm của chúng tôi ở đây.

Trong trường hợp của chúng tôi, chúng tôi có một kết xuất dữ liệu JSON với định dạng bằng không được áp dụng.

Cách in đẹp một tệp JSON bằng Python

Tệp này - address.json - có thể được chuyển sang Python và được định dạng. Để làm việc với các tệp JSON bằng Python, bạn cần nhập mô-đun json. Sau đó, bạn có thể tự định nghĩa tệp dưới dạng một biến.

Cách in đẹp một tệp JSON bằng Python

Khi bạn đã ở thời điểm này, bạn có thể bắt đầu làm việc với “address.json”.

2. Mở tệp JSON bằng Python

Cách in đẹp một tệp JSON bằng Python

Tiếp theo, bạn sẽ cần mở “address.json”. Điều này được thực hiện thông qua with open…as phương pháp:

with open(json_file, 'r') as file:
…

Trong khối mã này, sau đó bạn sẽ cần gọi json.load() trên “address.json” và gán nó cho một biến:

parsed = json.load(file)

Nếu bạn chạy tệp này ngay bây giờ, nó sẽ thực thi, nhưng bạn sẽ không thấy bất kỳ kết quả nào trong Terminal. Đối với điều này, bạn sẽ cần chuyển sang bước thứ ba.

3. In đẹp tệp JSON của bạn (Và điều chỉnh cài đặt)

Khía cạnh cuối cùng của việc in ấn đẹp tệp JSON của bạn là tự thực hiện quá trình in. Để thực hiện việc này, hãy thêm phần sau làm dòng thụt vào của with open…as khối mã:

print(json.dumps(parsed, indent=4, sort_keys=True))

Để chia nhỏ điều này, print hàm gọi json.dumps() . Điều này áp dụng ba đối số:

  • Tên của tệp bạn muốn in đẹp.
  • Kích thước của thụt lề.
  • Liệu tệp JSON có được sắp xếp theo các khóa của nó hay không.

Khi bạn đã sẵn sàng, hãy lưu các thay đổi của bạn, sau đó mở một cửa sổ Terminal mới. Tại đây, bạn sẽ muốn điều hướng đến đúng thư mục dự án và chạy chương trình.

Cách in đẹp một tệp JSON bằng Python

Đầu ra Terminal sẽ áp dụng cài đặt của bạn và in tệp JSON.

Cách in đẹp một tệp JSON bằng Python

Tất nhiên, bạn thường sẽ lưu trữ JSON đẹp đẽ ở nơi khác hơn là in dữ liệu vào Terminal. Mặc dù vậy, có một đoạn mã một dòng mà bạn có thể sử dụng để in tệp JSON từ dòng lệnh.

Cách in đẹp một tệp JSON bằng Python từ Dòng lệnh

Có một cách cực nhanh để in các tệp JSON bằng Python trực tiếp từ dòng lệnh dưới dạng đầu ra Terminal. Để thực hiện việc này, hãy mở một cửa sổ Terminal mới, điều hướng đến thư mục dự án của bạn và chạy như sau:

cat addresses.json | python3 -m json.tool

Trong ví dụ này, bạn sẽ muốn thay đổi “address.json” thành tên tệp của riêng mình. Khi bạn chạy điều này, bạn sẽ thấy đầu ra có định dạng hiển thị đầu cuối.

Đây là một giải pháp tuyệt vời, không cần mã để in nhanh các tệp JSON bằng Python và chỉ mất vài giây để chạy.

Kết thúc

Có một số cách sử dụng để in tệp JSON bằng Python. Thông thường, bạn sẽ muốn làm cho dữ liệu được rút gọn có thể đọc được, có thể để xuất cho những người dùng khác. Bất kể lý do của bạn là gì, Python cho phép bạn làm điều này bằng cách sử dụng mô-đun json và khối mã “mở… as”.

Nếu bạn quan tâm đến những gì Python có thể làm cho bạn, hãy xem các bài viết khác của chúng tôi về lặp Python và hàm range (). Phương pháp này có giúp ích gì cho bạn trong công việc hàng ngày không, và nếu có thì làm thế nào? Hãy cho chúng tôi biết trong phần bình luận bên dưới!