{article Dive into Python}{title} {text}{/article}

Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 10:45:13) [MSC v.1600 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.

>>> exec(open("./fileinfo.py").read())
name=/Users/Public/Music/Sample Music/01 - what i want for christmas.mp3
name=/Users/Public/Music/Sample Music/02 - fruitcake.mp3
name=/Users/Public/Music/Sample Music/08 - the first noel.mp3
name=/Users/Public/Music/Sample Music/08 - xmas lights.mp3
name=/Users/Public/Music/Sample Music/10 - jingle bells (robbie hardkiss remix).mp3
name=/Users/Public/Music/Sample Music/dumpster diver.mp3
name=/Users/Public/Music/Sample Music/kalimba.mp3
name=/Users/Public/Music/Sample Music/maid with the flaxen hair.mp3
name=/Users/Public/Music/Sample Music/sleep away.mp3
name=/Users/Public/Music/Sample Music/twisted sister - 00 - we're not gonna take it.mp3
>>> class MP3FileInfo(FileInfo):
"store ID3v1.0 MP3 tags"
tagDataMap = {"title" : ( 3, 33, stripnulls),
"artist" : ( 33, 63, stripnulls),
"album" : ( 63, 93, stripnulls),
"year" : ( 93, 97, stripnulls),
"comment" : ( 97, 126, stripnulls),
"genre" : (127, 128, ord)}


>>> import fileinfo
>>> fileinfo.MP3FileInfo
<class 'fileinfo.MP3FileInfo'>
>>> fileinfo.MP3FileInfo.tagDataMap
{'genre': (127, 128, <built-in function ord>),

'comment': (97, 126, <function stripnulls at 0x0000000003879620>),

'album': (63, 93, <function stripnulls at 0x0000000003879620>),

'artist': (33, 63, <function stripnulls at 0x0000000003879620>),

'year': (93, 97, <function stripnulls at 0x0000000003879620>),

'title': (3, 33, <function stripnulls at 0x0000000003879620>)}
>>> m = fileinfo.MP3FileInfo()
>>> m.tagDataMap
{'genre': (127, 128, <built-in function ord>),

'comment': (97, 126, <function stripnulls at 0x0000000003879620>),

'album': (63, 93, <function stripnulls at 0x0000000003879620>),

'artist': (33, 63, <function stripnulls at 0x0000000003879620>),

'year': (93, 97, <function stripnulls at 0x0000000003879620>),

'title': (3, 33, <function stripnulls at 0x0000000003879620>)}
>>>

MP3FileInfo is the class itself, not any particular instance of the class.

tagDataMap is a class attribute: literally, an attribute of the class. It is available before creating any instances of the class.

Class attributes are available both through direct reference to the class and through any instance of the class.

{source}
<!-- You can place html anywhere within the source tags -->
<pre class="brush:py;">

Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 10:45:13) [MSC v.1600 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> exec(open("./fileinfo.py").read())

name=/Users/Public/Music/Sample Music/01 - what i want for christmas.mp3
name=/Users/Public/Music/Sample Music/02 - fruitcake.mp3
name=/Users/Public/Music/Sample Music/08 - the first noel.mp3
name=/Users/Public/Music/Sample Music/08 - xmas lights.mp3
name=/Users/Public/Music/Sample Music/10 - jingle bells (robbie hardkiss remix).mp3
name=/Users/Public/Music/Sample Music/dumpster diver.mp3
name=/Users/Public/Music/Sample Music/kalimba.mp3
name=/Users/Public/Music/Sample Music/maid with the flaxen hair.mp3
name=/Users/Public/Music/Sample Music/sleep away.mp3
name=/Users/Public/Music/Sample Music/twisted sister - 00 - we're not gonna take it.mp3
>>> class MP3FileInfo(FileInfo):
    "store ID3v1.0 MP3 tags"
    tagDataMap = {"title" : ( 3, 33, stripnulls),
                "artist" : ( 33, 63, stripnulls),
                "album" : ( 63, 93, stripnulls),
                "year" : ( 93, 97, stripnulls),
                "comment" : ( 97, 126, stripnulls),
                "genre" : (127, 128, ord)}


>>> import fileinfo
>>> fileinfo.MP3FileInfo
<class 'fileinfo.MP3FileInfo'>
>>> fileinfo.MP3FileInfo.tagDataMap
{'genre': (127, 128, <built-in function ord>),

'comment': (97, 126, <function stripnulls at 0x0000000003879620>),

'album': (63, 93, <function stripnulls at 0x0000000003879620>),

'artist': (33, 63, <function stripnulls at 0x0000000003879620>),

'year': (93, 97, <function stripnulls at 0x0000000003879620>),

'title': (3, 33, <function stripnulls at 0x0000000003879620>)}
>>> m = fileinfo.MP3FileInfo()
>>> m.tagDataMap
{'genre': (127, 128, <built-in function ord>),

'comment': (97, 126, <function stripnulls at 0x0000000003879620>),

'album': (63, 93, <function stripnulls at 0x0000000003879620>),

'artist': (33, 63, <function stripnulls at 0x0000000003879620>),

'year': (93, 97, <function stripnulls at 0x0000000003879620>),

'title': (3, 33, <function stripnulls at 0x0000000003879620>)}

</pre>
<script language="javascript" type="text/javascript">
    // You can place JavaScript like this

</script>
<?php
    // You can place PHP like this

?>

{/source}