Hướng dẫn python yaml preserve quotes - dấu ngoặc kép của python yaml
Tôi có tệp yaml sau:
Khi tôi đọc nó với pyyaml và đổ lại, tôi nhận được đầu ra sau:
Mã trong câu hỏi:
Tôi đã thử sử dụng tham số 1:
Nhưng bây giờ tôi nhận được:
Tôi cần làm gì để giữ định dạng ban đầu, mà không đưa ra bất kỳ giả định nào về các tên biến trong tệp YAML?without making any assumptions about the variable names in the YAML file?
DREFTYMAC 30.4K26 Huy hiệu vàng116 Huy hiệu bạc179 Huy hiệu đồng26 gold badges116 silver badges179 bronze badges hỏi ngày 14 tháng 7 năm 2016 lúc 8:59Jul 14, 2016 at 8:59
Jeroen Jacobsjeroen JacobsJeroen Jacobs 1.3432 Huy hiệu vàng13 Huy hiệu bạc 30 Huy hiệu Đồng2 gold badges13 silver badges30 bronze badges 2 Tôi khuyên bạn nên cập nhật để sử dụng YAML 1.2 (phát hành năm 2009) với gói 2 tương thích ngược thay vì sử dụng pyyaml, trong đó thực hiện hầu hết YAML 1.1 (2005). (Tuyên bố miễn trừ trách nhiệm: Tôi là tác giả của gói đó).Sau đó, bạn chỉ cần chỉ định 3 khi tải để vấp ngã trong tệp yaml:
đầu ra nào (bao gồm cả nhận xét được bảo tồn):
Sau khi tải vô hướng chuỗi sẽ là một lớp con của chuỗi, để có thể chứa thông tin trích dẫn, nhưng sẽ hoạt động như một chuỗi bình thường cho tất cả các mục đích khác. Nếu bạn muốn thay thế một chuỗi như vậy mặc dù ( 4 thành 5), bạn phải chuyển chuỗi vào lớp con này ( 6 từ 7).Khi Tripping vòng 2 theo mặc định bảo tồn thứ tự (bằng cách chèn) của các phím.Đã trả lời ngày 26 tháng 7 năm 2016 lúc 6:28Jul 26, 2016 at 6:28
Phải, vì vậy mượn rất nhiều từ câu trả lời này, bạn có thể làm điều gì đó như thế này:
Tuy nhiên, điều này chỉ quá tải nó trên tất cả các loại chuỗi trong từ điển, vì vậy nó cũng sẽ trích dẫn các khóa, không chỉ các giá trị. Nó in:
Đây có phải là những gì bạn muốn? Không chắc bạn có nghĩa là gì bởi các tên biến, bạn có nghĩa là các phím?
Đã trả lời ngày 14 tháng 7 năm 2016 lúc 9:29Jul 14, 2016 at 9:29
NobilisnobilisNobilis 7.0501 Huy hiệu vàng33 Huy hiệu bạc65 Huy hiệu Đồng1 gold badge33 silver badges65 bronze badges 2 Bạn có thể sử dụng phương thức sau để giữ lại đối tượng 9 của mình trong 0:Lấy ví dụ yaml của bạn:
Đang tải nó vào env_dict (từ điển): 0Các liên kết này đã giúp tôi đi đến câu trả lời này: bất kỳ thư viện YAML nào trong Python hỗ trợ việc đổ các chuỗi dài như các khối nghĩa đen hoặc các khối gấp? Làm thế nào tôi có thể kiểm soát những gì vô hướng hình thức pyyaml sử dụng cho dữ liệu của tôi? Ngoài ra, đây là một bài viết tuyệt vời để đọc để trích dẫn hay không trích dẫn? Hi vọng điêu nay co ich! Đã trả lời ngày 10 tháng 6 năm 2021 lúc 8:13Jun 10, 2021 at 8:13
aspiring1aspiring1aspiring1 3161 Huy hiệu vàng12 Huy hiệu bạc31 Huy hiệu đồng1 gold badge12 silver badges31 bronze badges |