summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJust van Rossum <just@letterror.com>2002-11-20 20:47:55 (GMT)
committerJust van Rossum <just@letterror.com>2002-11-20 20:47:55 (GMT)
commit10263d6e6b14fb55bca63735f2508ee8e269526c (patch)
treeae69c6422cc373b57419f6539e82589e88e00156
parent2db92a6ee1fbc580cc9373b1a722987408d294a1 (diff)
downloadcpython-10263d6e6b14fb55bca63735f2508ee8e269526c.zip
cpython-10263d6e6b14fb55bca63735f2508ee8e269526c.tar.gz
cpython-10263d6e6b14fb55bca63735f2508ee8e269526c.tar.bz2
- cleaned up example/test code
- don't encode/escape elements - fixed typo in doc string - provide our own copy function for the Dict class
-rw-r--r--Mac/Lib/plistlib.py59
1 files changed, 30 insertions, 29 deletions
diff --git a/Mac/Lib/plistlib.py b/Mac/Lib/plistlib.py
index c7ba0ad..a4a9f19 100644
--- a/Mac/Lib/plistlib.py
+++ b/Mac/Lib/plistlib.py
@@ -34,19 +34,19 @@ The <date> plist data has (limited) support through the Date class.
Generate Plist example:
pl = Plist(
- Foo="Doodah",
- aList=["A", "B", 12, 32.1, [1, 2, 3]],
- aFloat = 0.1,
- anInt = 728,
- aDict=Dict(
- aString="<hello & hi there!>",
- SomeUnicodeValue=u'M\xe4ssig, Ma\xdf',
- someTrueValue=True,
- someFalseValue=False,
- ),
- someData = Data("hello there!"),
- someMoreData = Data("hello there! " * 10),
- aDate = Date(time.mktime(time.gmtime())),
+ aString="Doodah",
+ aList=["A", "B", 12, 32.1, [1, 2, 3]],
+ aFloat = 0.1,
+ anInt = 728,
+ aDict=Dict(
+ anotherString="<hello & hi there!>",
+ aUnicodeValue=u'M\xe4ssig, Ma\xdf',
+ aTrueValue=True,
+ aFalseValue=False,
+ ),
+ someData = Data("<binary gunk>"),
+ someMoreData = Data("<lots of binary gunk>" * 10),
+ aDate = Date(time.mktime(time.gmtime())),
)
# unicode keys are possible, but a little awkward to use:
pl[u'\xc5benraa'] = "That was a unicode key."
@@ -78,7 +78,6 @@ class DumbXMLWriter:
def beginElement(self, element):
self.stack.append(element)
- element = _encode(element)
self.writeln("<%s>" % element)
self.indentLevel += 1
@@ -90,7 +89,6 @@ class DumbXMLWriter:
def simpleElement(self, element, value=None):
if value:
- element = _encode(element)
value = _encode(value)
self.writeln("<%s>%s</%s>" % (element, value, element))
else:
@@ -172,7 +170,7 @@ class PlistWriter(DumbXMLWriter):
class Dict:
- """Dict wrapper for convenient acces of values through attributes."""
+ """Dict wrapper for convenient access of values through attributes."""
def __init__(self, **args):
self.__dict__.update(args)
@@ -189,6 +187,9 @@ class Dict:
return "%s(**%s)" % (self.__class__.__name__, self.__dict__)
__repr__ = __str__
+ def copy(self):
+ return self.__class__(**self.__dict__)
+
def __getattr__(self, attr):
"""Delegate everything else to the dict object."""
return getattr(self.__dict__, attr)
@@ -400,19 +401,19 @@ if __name__ == "__main__":
import time
if len(sys.argv) == 1:
pl = Plist(
- Foo="Doodah",
- aList=["A", "B", 12, 32.1, [1, 2, 3]],
- aFloat = 0.1,
- anInt = 728,
- aDict=Dict(
- aString="<hello & hi there!>",
- SomeUnicodeValue=u'M\xe4ssig, Ma\xdf',
- someTrueValue=True,
- someFalseValue=False,
- ),
- someData = Data("hello there!"),
- someMoreData = Data("hello there! " * 10),
- aDate = Date(time.mktime(time.gmtime())),
+ aString="Doodah",
+ aList=["A", "B", 12, 32.1, [1, 2, 3]],
+ aFloat = 0.1,
+ anInt = 728,
+ aDict=Dict(
+ anotherString="<hello & hi there!>",
+ aUnicodeValue=u'M\xe4ssig, Ma\xdf',
+ aTrueValue=True,
+ aFalseValue=False,
+ ),
+ someData = Data("<binary gunk>"),
+ someMoreData = Data("<lots of binary gunk>" * 10),
+ aDate = Date(time.mktime(time.gmtime())),
)
elif len(sys.argv) == 2:
pl = Plist.fromFile(sys.argv[1])