สมัครเรียนโทร. 085-350-7540 , 084-88-00-255 , ntprintf@gmail.com

Tutorial Python

L16 PYTHON SIMPLE ARITHMETIC L40 PYTHON TUTORIAL INTRO L41 PYTHON GETTING STARTED L42 PYTHON SYNTAX L43 PYTHON COMMENTS L44 PYTHON VARIABLES L45 PYTHON DATATYPE L46 PYTHON NUMBERS L47 PYTHON CASING L48 PYTHON STRINGS L49 PYTHON BOOLEANS L50 PYTHON OPARETORS L51 PYTHON LISTS L52 PYTHON TUPELS L53 PYTHON SETS L54 PYTHON DICTIONARY L55 PYTHON IF ELSE L56 PYTHON WHILE LOOP L57 PYTHON FOR LOOP L58 PYTHON FUNCTION L59 PYTHON LAMBDA L60 PYTHON ARRAYS L61 PYTHON CLASSSES OBJECTS L62 PYTHON INHERITANCE L63 PYTHON ITERATORS L63 PYTHON SCOPE L64 PYTHON MODULES L65 PYTHON DATETIME L66 PYTHON JSON L67 PYTHON REGEX L68 PYTHON PIP L69 PYTHON TRY EXCAPE L70 PYTHON USER INPUT L71 PYTHON FILE OPEN L73 PYTHON STRING FORMATTING L74 PYTHON READ FILE L75 PYTHON WRILE CREATE FILE L76 PYTHON DELETE FILE L90 PYTHON POISSON DISTRIBUTION L90 PYTHON RANDOM INTRODUCTION L91 PYTHON CHI SQUARE DISTRIBUTION L91 PYTHON EXPONENTIAL DISTRIBUTION L92 PYTHON RAYLEIGH DISTRIBUTION L93 PYTHON PARETO DISTRIBUTION L94 PYTHON ZIPF DISTRIBUTION L96 PYTHON RANDOM PERMUTATIONS L97 PYTHON SEABORN L98 PYTHON NORMAL DISTRIBUTION L99 PYTHON DISTRIBUTION L99 PYTHON LOGISTIC DISTRIBUTION L99 PYTHON MULTINOMIAL DISTRIBUTION L99 PYTHON NUMPY SPLITTING ARRAY L99 PYTHON NUMPY UFUNCS L99 PYTHON UNIFORM DISTRIBUTION LM60PYTHON BUILT IN FUNCTIONS LM61PYTHON STRING METHODS LM62PYTHON LIST ARRAY METHODS LM63PYTHON DICTIONARY METHODS LM64PYTHON TUPLE METHODS LM65PYTHON SET METHODS LM66PYTHON FILE METHODS LM67PYTHON KEYWORD LM68PYTHON BUILT IN EXCAPTION LM69PYTHON RANDOM MODULE LM70PYTHON MATH MODULE LM70PYTHON REQUSTS MODULE LM72PYTHON CMATH MODULE LM73PYTHON HOWTO REMOVE DUPLICATES FROM A PYTHON LIST LM74PYTHON HOW TO REVERSE A STRING IN PYTHON LM75PYTHON HOW TO ADD TWO NUMBERS IN PYTHON LM95PYTHON RANDOM DATA DISTRIBUTION

Python JSON

เรียนเขียนโปรแกรมง่ายๆกับ Expert Programming Tutor วันนี้เราจะมาเข้าสู่บท JSON
JSON เป็นStandard format สำหรับการจัดเก็บและแลกเปลี่ยนข้อมูล
JSON ย่อมาจาก JavaScript object notation
JSON in Python
Python มี
built-in package ชื่อ json ซึ่งสามารถใช้เพื่อทำงานกับข้อมูล JSON
import โมดูล json

import json

เข้ารหัสและถอดรหัส JSON
 มีอยู่ 2 คำสั่งต่อไปนี้
json.dumps (): การเข้ารหัสข้อมูล
ตัวอย่าง

import json
# a Python object (dict):
x = {
  "name": "John",
  "age": 30,
  "city": "New York"
}
 
# convert into JSON:
y = json.dumps(x)
 
# the result is a JSON string:
print(y)

ผลลัพธ์

{"name": "John", "age": 30, "city": "New York"}

json.loads (): ข้อมูลจะถูกถอดรหัส

ตัวอย่าง

import json
# some JSON:
x =  '{ "name":"John", "age":30, "city":"New York"}'
 
# parse x:
y = json.loads(x)
 
# the result is a Python dictionary:
print(y["age"])

ผลลัพธ์

30

กรอบด้านล่างนี้เป็นการเปรียบเทียบระหว่าง Python Element กับ JSON Element 

PYTHON ELEMENT JSON ELEMENT

Dict

objects

list tuple

Array

STR

String

int float 

number

True

True

False

False

none

null

ตัวอย่าง
แปลงออบเจ็กต์ Python เป็นสตริง JSON และพิมพ์ค่า

import json
print(json.dumps({"name": "John", "age": 30}))
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))

ผลลัพธ์

{"name": "John", "age": 30}
["apple", "bananas"]
["apple", "bananas"]
"hello"
42
31.76
true
false
null

จัดรูปแบบผลลัพธ์
ตัวอย่างด้านบนปรินต์สตริง JSON แต่ไม่ง่ายต่อการอ่านโดยมันไม่มีการเว้นย่อหน้าและการขึ้นบรรทัดใหม่ เมธอด json.dumps () มีพารามิเตอร์เพื่อให้ง่ายต่อการอ่านผลลัพธ์
ตัวอย่าง
ใช้พารามิเตอร์ indent เพื่อกำหนดจำนวนของการย่อหน้า

import json

x = {
  "name": "John",
  "age": 30,
  "married": True,
  "divorced": False,
  "children": ("Ann","Billy"),
  "pets": None,
  "cars": [
    {"model": "BMW 230", "mpg": 27.5},
    {"model": "Ford Edge", "mpg": 24.1}
  ]
}

# use four indents to make it easier to read the result:
print(json.dumps(x, indent=4))

ผลลัพธ์

{
    "name": "John",
    "age": 30,
    "married": true,
    "divorced": false,
    "children": [
        "Ann",
        "Billy"
    ],
    "pets": null,
    "cars": [
        {
            "model": "BMW 230",
            "mpg": 27.5
        },
        {
            "model": "Ford Edge",
            "mpg": 24.1
        }
    ]
}

นักเรียนยังสามารถกำหนดตัวคั่นค่าเริ่มต้นคือ (",", ":") ซึ่งหมายถึงการใช้เครื่องหมายจุลภาคและช่องว่างเพื่อแยกแต่ละออบเจ็กต์และเครื่องหมายจุดคู่และช่องว่างเพื่อแยกKeysออกจากค่า
ตัวอย่าง
ใช้พารามิเตอร์ตัวคั่นเพื่อเปลี่ยนตัวคั่นเริ่มต้น

import json

x = {
  "name": "John",
  "age": 30,
  "married": True,
  "divorced": False,
  "children": ("Ann","Billy"),
  "pets": None,
  "cars": [
    {"model": "BMW 230", "mpg": 27.5},
    {"model": "Ford Edge", "mpg": 24.1}
  ]
}

# use . and a space to separate objects, and a space, a = and a space to separate keys from their values:
print(json.dumps(x, indent=4, separators=(". ", " = ")))

ผลลัพธ์

{
    "name" = "John".
    "age" = 30.
    "married" = true.
    "divorced" = false.
    "children" = [
        "Ann".
        "Billy"
    ],
    "pets" = null.
    "cars" = [
        {
            "model" = "BMW 230".
            "mpg" = 27.5
        }.
        {
            "model" = "Ford Edge".
            "mpg" = 24.1
        }
    ]
}

Order the Result
วิธีการใช้ json.dumps () มีพารามิเตอร์ในการorder keys ในผลลัพธ์
ตัวอย่าง
ใช้พารามิเตอร์ sort_keys เพื่อให้มันทำการจัดเรียงผลลัพธ์ออกมา

import json

x = {
  "name": "John",
  "age": 30,
  "married": True,
  "divorced": False,
  "children": ("Ann","Billy"),
  "pets": None,
  "cars": [
    {"model": "BMW 230", "mpg": 27.5},
    {"model": "Ford Edge", "mpg": 24.1}
  ]
}

# sort the result alphabetically by keys:
print(json.dumps(x, indent=4, sort_keys=True))

ผลลัพธ์

{
    "age": 30,
    "cars": [
        {
            "model": "BMW 230",
            "mpg": 27.5
        },
        {
            "model": "Ford Edge",
            "mpg": 24.1
        }
    ],
    "children": [
        "Ann",
        "Billy"
    ],
    "divorced": false,
    "married": true,
    "name": "John",
    "pets": null
}


สรุป JSON  เป็นStandard format สำหรับการจัดเก็บและแลกเปลี่ยนข้อมูล มีทั้งหมด 2 คำสั่ง

แปลจากhttps://www.w3schools.com/python/python_json.asp



บทความนี้อาจจะมีที่ผิด กรุณาตรวจสอบก่อนใช้

หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor

ไม่อยากอ่าน Tutorial อยากมาเรียนเลยทำอย่างไร?

สมัครเรียน ONLINE ได้ทันทีที่ https://elearn.expert-programming-tutor.com

หรือติดต่อ

085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM

แผนที่ ที่ตั้งของอาคารของเรา

C Article


C++ Article


Java Article


C#.NET Article


VB.NET Article


Python Article


Golang Article


JavaScript Article


Perl Article


Lua Article


Rust Article


Article


Python


Python Numpy


Python Machine Learning



แผนผังการเรียนเขียนโปรแกรม

Link อื่นๆ

Allow sites to save and read cookie data.
Cookies are small pieces of data created by sites you visit. They make your online experience easier by saving browsing information. We use cookies to improve your experience on our website. By browsing this website, you agree to our use of cookies.

Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com

ติดต่อเราได้ที่

085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
แผนที่ ที่ตั้งของอาคารของเรา