Hướng dẫn how do i create a yml file in python? - làm cách nào để tạo tệp yml trong python?

Giới thiệu

Trong hướng dẫn này, chúng tôi sẽ học cách sử dụng thư viện YAML trong Python 3. YAML là viết tắt của một ngôn ngữ đánh dấu khác.

Trong những năm gần đây, nó đã trở nên rất phổ biến để sử dụng trong việc lưu trữ dữ liệu theo cách tuần tự hóa cho các tệp cấu hình. Vì YAML về cơ bản là định dạng dữ liệu, thư viện YAML khá ngắn gọn, vì chức năng duy nhất cần thiết của nó là khả năng phân tích các tệp được định dạng YAML.

Trong bài viết này, chúng tôi sẽ bắt đầu bằng cách xem cách dữ liệu được lưu trữ trong tệp YAML, tiếp theo là tải dữ liệu đó vào một đối tượng Python. Cuối cùng, chúng ta sẽ học cách lưu trữ một đối tượng Python trong tệp YAML. Vì vậy, hãy bắt đầu.

Trước khi chúng tôi tiến xa hơn, có một vài điều kiện tiên quyết cho hướng dẫn này. Bạn nên có một sự hiểu biết cơ bản về cú pháp của Python và/hoặc đã thực hiện ít nhất kinh nghiệm lập trình cấp độ mới bắt đầu với một số ngôn ngữ khác. Ngoài ra, hướng dẫn khá đơn giản và dễ theo dõi cho người mới bắt đầu.

Cài đặt

Quá trình cài đặt cho YAML khá thẳng về phía trước. Có hai cách để làm điều đó; Chúng ta sẽ bắt đầu với dễ dàng đầu tiên:

Phương pháp 1: thông qua PIP

Cách dễ nhất để cài đặt thư viện YAML trong Python là thông qua trình quản lý gói PIP. Nếu bạn đã cài đặt PIP trong hệ thống của mình, hãy chạy lệnh sau để tải xuống và cài đặt YAML:

$ pip install pyyaml

Phương pháp 2: Thông qua nguồn

Trong trường hợp bạn chưa cài đặt PIP hoặc đang phải đối mặt với một số vấn đề với phương thức trên, bạn có thể truy cập trang nguồn của thư viện. Tải xuống kho lưu trữ dưới dạng tệp zip, mở dấu nhắc thiết bị đầu cuối hoặc lệnh và điều hướng đến thư mục nơi tải xuống tệp. Khi bạn ở đó, hãy chạy lệnh sau:

$ python setup.py install

Ví dụ về mã YAML

Trong phần này, chúng tôi sẽ tìm hiểu cách xử lý [thao tác] các tệp yaml, bắt đầu bằng cách đọc chúng, tức là cách tải chúng vào tập lệnh Python của chúng tôi để chúng tôi có thể sử dụng chúng theo nhu cầu của chúng tôi. Vì vậy, hãy bắt đầu.

Đọc các tệp yaml trong python

Trong phần này, chúng ta sẽ xem cách đọc các tệp yaml trong Python.

Hãy bắt đầu bằng cách tạo hai tệp được định dạng YAML.

Nội dung của tệp đầu tiên như sau:

# fruits.yaml file

apples: 20
mangoes: 2
bananas: 3
grapes: 100
pineapples: 1

Nội dung của tệp thứ hai như sau:

# categories.yaml file

sports:

  - soccer
  - football
  - basketball
  - cricket
  - hockey
  - table tennis

countries:

  - Pakistan
  - USA
  - India
  - China
  - Germany
  - France
  - Spain

Bạn có thể thấy rằng các tệp

$ python setup.py install
2 và
$ python setup.py install
3 chứa các loại dữ liệu khác nhau. Cái trước chỉ chứa thông tin về một thực thể, tức là trái cây, trong khi cái sau chứa thông tin về thể thao và quốc gia.

Bây giờ chúng ta hãy thử đọc dữ liệu từ hai tệp mà chúng tôi đã tạo bằng tập lệnh Python. Phương thức

$ python setup.py install
4 từ mô -đun
$ python setup.py install
5 có thể được sử dụng để đọc các tệp yaml. Nhìn vào kịch bản sau:

# process_yaml.py file

import yaml

with open[r'E:\data\fruits.yaml'] as file:
    # The FullLoader parameter handles the conversion from YAML
    # scalar values to Python the dictionary format
    fruits_list = yaml.load[file, Loader=yaml.FullLoader]

    print[fruits_list]

Output:

{ 'apples': 20, 'mangoes': 2, 'bananas': 3, 'grapes': 100, 'pineapples': 1 }

Trong tập lệnh trên, chúng tôi đã chỉ định

$ python setup.py install
6 là giá trị cho tham số
$ python setup.py install
7 tải ngôn ngữ YAML đầy đủ, tránh thực thi mã tùy ý. Thay vì sử dụng hàm
$ python setup.py install
8 và sau đó chuyển
$ python setup.py install
6 làm giá trị cho tham số
$ python setup.py install
7, bạn cũng có thể sử dụng hàm
# fruits.yaml file

apples: 20
mangoes: 2
bananas: 3
grapes: 100
pineapples: 1
1, như chúng ta sẽ thấy trong ví dụ tiếp theo.

Bây giờ chúng ta hãy thử và đọc tệp YAML thứ hai theo cách tương tự bằng cách sử dụng tập lệnh Python:

# read_categories.py file

import yaml

with open[r'E:\data\categories.yaml'] as file:
    documents = yaml.full_load[file]

    for item, doc in documents.items[]:
        print[item, ":", doc]

Vì có 2 tài liệu trong tệp

$ python setup.py install
3, chúng tôi đã chạy một vòng lặp để đọc cả hai.

Output:

sports : ['soccer', 'football', 'basketball', 'cricket', 'hockey', 'table tennis']
countries : ['Pakistan', 'USA', 'India', 'China', 'Germany', 'France', 'Spain']

Như bạn có thể thấy trong hai ví dụ cuối cùng, thư viện tự động xử lý việc chuyển đổi dữ liệu được định dạng YAML sang từ điển và danh sách Python.

Viết các tệp yaml bằng python

Bây giờ chúng ta đã học được cách chuyển đổi tệp YAML thành từ điển Python, chúng ta hãy cố gắng làm mọi thứ theo cách khác xung quanh tức là tuần tự hóa từ điển Python và lưu trữ nó thành một tệp được định dạng YAML. Với mục đích này, chúng ta hãy sử dụng cùng một từ điển mà chúng ta nhận được làm đầu ra từ chương trình cuối cùng của chúng ta.

import yaml

dict_file = [{'sports' : ['soccer', 'football', 'basketball', 'cricket', 'hockey', 'table tennis']},
{'countries' : ['Pakistan', 'USA', 'India', 'China', 'Germany', 'France', 'Spain']}]

with open[r'E:\data\store_file.yaml', 'w'] as file:
    documents = yaml.dump[dict_file, file]

Phương thức

# fruits.yaml file

apples: 20
mangoes: 2
bananas: 3
grapes: 100
pineapples: 1
3 lấy từ điển Python làm phương thức đầu tiên và một đối tượng tệp làm tham số thứ hai.

Khi mã trên thực thi, một tệp có tên

# fruits.yaml file

apples: 20
mangoes: 2
bananas: 3
grapes: 100
pineapples: 1
4 sẽ được tạo trong thư mục làm việc hiện tại của bạn.

Kiểm tra hướng dẫn thực hành của chúng tôi, thực tế để học Git, với các thực hành tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó!

# store_file.yaml file contents:

- sports:

  - soccer
  - football
  - basketball
  - cricket
  - hockey
  - table tennis
- countries:

  - Pakistan
  - USA
  - India
  - China
  - Germany
  - France
  - Spain

Một chức năng hữu ích khác mà thư viện YAML cung cấp cho phương thức

# fruits.yaml file

apples: 20
mangoes: 2
bananas: 3
grapes: 100
pineapples: 1
3 là tham số
# fruits.yaml file

apples: 20
mangoes: 2
bananas: 3
grapes: 100
pineapples: 1
6. Để hiển thị những gì nó làm, hãy áp dụng nó trên tệp đầu tiên của chúng tôi, tức là trái cây.yaml:

$ python setup.py install
0

Output:

$ python setup.py install
1

Bạn có thể thấy trong đầu ra rằng các loại trái cây đã được sắp xếp theo thứ tự bảng chữ cái.

Sự kết luận

Trong hướng dẫn ngắn gọn này, chúng tôi đã học cách cài đặt Thư viện YAML của Python [Pyyaml] để thao tác các tệp được định dạng YAML. Chúng tôi đã tải nội dung của tệp YAML vào chương trình Python của chúng tôi dưới dạng từ điển, cũng như tuần tự hóa từ điển Python trong các tệp YAML và lưu trữ các khóa của chúng. Thư viện khá ngắn gọn và chỉ cung cấp các chức năng cơ bản.

Tệp YML trong Python là gì?

YAML [YAML không phải là ngôn ngữ đánh dấu] là ngôn ngữ chủ yếu hóa dữ liệu có thể đọc được của con người. Nó thường được sử dụng cho các tệp cấu hình, nhưng nó cũng được sử dụng trong lưu trữ dữ liệu [ví dụ: đầu ra gỡ lỗi] hoặc truyền [ví dụ: tiêu đề tài liệu].a human-readable data-serialization language. It is commonly used for configuration files, but it is also used in data storage [e.g. debugging output] or transmission [e.g. document headers].

Python đã xây dựng ở Yaml?

Tuy nhiên, Python thiếu hỗ trợ tích hợp cho định dạng dữ liệu YAML, thường được sử dụng để cấu hình và tuần tự hóa, mặc dù có điểm tương đồng rõ ràng giữa hai ngôn ngữ.Python lacks built-in support for the YAML data format, commonly used for configuration and serialization, despite clear similarities between the two languages.

YML có phải là Python không?

YAML không phải là một phần của thư viện Python tiêu chuẩn, trong khi XML và JSON.Sự phụ thuộc của nó vào thụt lề đôi khi gây khó chịu [tuy nhiên, các nhà phát triển Python đã quen với điều đó, phải không?] Có lẽ nó hơi linh hoạt đối với các trường hợp sử dụng đơn giản, như trao đổi dữ liệu của các đối tượng đơn giản., while XML and JSON are. Its dependence on indentation is frustrating sometimes [however, Python developers are used to that, right?] It's perhaps a bit too versatile for simple use-cases, like data exchange of simple objects.

Yaml có giống như Python không?

Python được khen ngợi nhiều nhất vì cú pháp thanh lịch và mã có thể đọc được, nếu bạn mới bắt đầu sự nghiệp lập trình Python phù hợp với bạn nhất.Mặt khác, YAML được trình bày chi tiết là "một định dạng tuần tự dữ liệu có thể phân tích đơn giản được thiết kế cho khả năng đọc và tương tác của con người".YAML is detailed as "A straightforward machine parsable data serialization format designed for human readability and interaction".

Bài Viết Liên Quan

Chủ Đề