New submission from JordanS <jps...@mun.ca>: format() cannot handle datetime.DateTime objects, returns the format_spec instead, without applying formatting to it, perhaps default behaviour in case of unknown type. Different modifications, ie: using str.format() syntax produce same behaviour.
Sample code: import datetime #data row = {0: 1, 'BeamId': 218, 2: 0.0, 3: 0.0, 4: datetime.datetime(2006, 7, 18, 0, 12), 5: datetime.datetime(2007, 2, 23, 18, 26, 55, 450000), 6: 32637.774406455803, 1: 218, 'DateAndTime': datetime.datetime(2007, 2, 23, 18, 26, 55, 450000), 'AvgFlexuralStrengthDown': 32637.774406455803, 'WarmUpTime': datetime.datetime(2006, 7, 18, 0, 12), 'AvgFlexuralStrengthUp': 15916.5463146028, 'IceSheetId': 1, 'Y': 0.0, 'X': 0.0, 7: 15916.5463146028} titles = ['BeamId', 'DateAndTime', 'AvgFlexuralStrengthDown', 'WarmUpTime', 'AvgFlexuralStrengthUp', 'IceSheetId', 'Y', 'X'] #attempt to print datetime: ignores formatting, doesn't print datetime value, prints format_spec instead for key in titles: asLine = "{0:*<30}".format(row[key]) print(asLine), print '\n' #prints a repr of datetime for key in titles: asLine = "{0!r:*<30}".format(row[key]) print(asLine), print '\n' #prints datetime as string for key in titles: asLine = "{0!s:*<30}".format(row[key]) print(asLine), print '\n' ---------- components: 2to3 (2.x to 3.0 conversion tool) messages: 98358 nosy: JordanS severity: normal status: open title: Issue using datetime with format() type: behavior versions: Python 2.6, Python 3.1 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue7789> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com