> 백엔드 개발 > Golang > Go에서 JSON 키를 정렬하는 방법: Python의 `sort_keys` 기능 복제?

Go에서 JSON 키를 정렬하는 방법: Python의 `sort_keys` 기능 복제?

Barbara Streisand
풀어 주다: 2024-12-02 10:13:11
원래의
801명이 탐색했습니다.

How to Sort JSON Keys in Go: Replicating Python's `sort_keys` Functionality?

Go에서 정렬된 JSON 키: Python의 동작 복제

Python에서는 json.dumps() 함수의 sort_keys 인수를 사용하여 정렬된 키로 JSON을 생성하는 것이 간단합니다. 그러나 Go의 표준 라이브러리는 동등한 옵션을 제공하지 않는 것 같습니다. Go에서 유사한 기능을 어떻게 달성할 수 있나요?

Go의 키 순서 동작

좋은 소식은 Go 인코딩/json 패키지가 키 순서를 내부적으로 처리한다는 것입니다. 작동 방식은 다음과 같습니다.

  • 맵: 키는 사전순(알파벳순)으로 정렬됩니다.
  • 구조체: 키는 순서대로 정렬됩니다. 그들은 내에서 정의됩니다 struct.

간단한 솔루션

Go에서 정렬된 키를 사용하여 JSON을 생성하려면 내장된 순서 동작을 활용할 수 있습니다.

다음을 고려하세요. JSON 객체:

{
  "name": "John Smith",
  "age": 30,
  "city": "New York"
}
로그인 후 복사

Go에서 다음을 사용하여 이 객체를 생성할 수 있습니다. map:

import (
    "encoding/json"
)

type Person struct {
    Name  string
    Age   int
    City  string
}

func main() {
    person := Person{
        Name:  "John Smith",
        Age:   30,
        City:  "New York",
    }

    jsonBytes, _ := json.Marshal(person)
    jsonStr := string(jsonBytes)

    // Output sorted JSON
    println(jsonStr)
}
로그인 후 복사

이 예에서 맵 키는 사전순으로 정렬되어 결과는 다음과 같습니다.

{
  "age": 30,
  "city": "New York",
  "name": "John Smith"
}
로그인 후 복사

위 내용은 Go에서 JSON 키를 정렬하는 방법: Python의 `sort_keys` 기능 복제?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿