]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-101992: update plistlib examples to be runnable (#101994)
authorDustin Rodrigues <dust.rod@gmail.com>
Fri, 17 Feb 2023 19:30:29 +0000 (14:30 -0500)
committerGitHub <noreply@github.com>
Fri, 17 Feb 2023 19:30:29 +0000 (14:30 -0500)
* gh-101992: update plistlib examples to be runnable

* Update Doc/library/plistlib.rst

---------

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Doc/library/plistlib.rst

index 5ded9661f080143e0390f699ad9a390a13f0d0bd..7aad15ec91a0ac2e802950ccd5bef16784bf182c 100644 (file)
@@ -159,6 +159,9 @@ Examples
 
 Generating a plist::
 
+    import datetime
+    import plistlib
+
     pl = dict(
         aString = "Doodah",
         aList = ["A", "B", 12, 32.1, [1, 2, 3]],
@@ -172,13 +175,19 @@ Generating a plist::
         ),
         someData = b"<binary gunk>",
         someMoreData = b"<lots of binary gunk>" * 10,
-        aDate = datetime.datetime.fromtimestamp(time.mktime(time.gmtime())),
+        aDate = datetime.datetime.now()
     )
-    with open(fileName, 'wb') as fp:
-        dump(pl, fp)
+    print(plistlib.dumps(pl).decode())
 
 Parsing a plist::
 
-    with open(fileName, 'rb') as fp:
-        pl = load(fp)
-    print(pl["aKey"])
+    import plistlib
+
+    plist = b"""<plist version="1.0">
+    <dict>
+        <key>foo</key>
+        <string>bar</string>
+    </dict>
+    </plist>"""
+    pl = plistlib.loads(plist)
+    print(pl["foo"])