API: DatetimeIndex and PeriodIndex string representation · Issue #7601 · pandas-dev/pandas (original) (raw)
DatetimeIndex
and PeriodIndex
have inconsistent representations. Should PeriodIndex
behaves as the same as DatetimeIndex
, or DatetimeIndex
should have one-liner representation in some methods?
import pandas and pd
# DatetimeIndex ---------------------------------------------------------------
idx = pd.DatetimeIndex(['2011-01-01', '2011-01-02', '2011-01-03'], freq='D')
print(idx)
# <class 'pandas.tseries.index.DatetimeIndex'>
# [2011-01-01, ..., 2011-01-03]
# Length: 3, Freq: D, Timezone: None
idx.__repr__()
# <class 'pandas.tseries.index.DatetimeIndex'>
# [2011-01-01, ..., 2011-01-03]
# Length: 3, Freq: D, Timezone: None
idx.__unicode__()
# <class 'pandas.tseries.index.DatetimeIndex'>
# [2011-01-01, ..., 2011-01-03]
# Length: 3, Freq: D, Timezone: None
idx.__str__()
# <class 'pandas.tseries.index.DatetimeIndex'>
# [2011-01-01, ..., 2011-01-03]
# Length: 3, Freq: D, Timezone: None
idx.__bytes__()
# <class 'pandas.tseries.index.DatetimeIndex'>
# [2011-01-01, ..., 2011-01-03]
# Length: 3, Freq: D, Timezone: None
# PeriodIndex ---------------------------------------------------------------
idx = pd.PeriodIndex(['2011-01-01', '2011-01-02', '2011-01-03'], freq='D')
print(idx)
# PeriodIndex([u'2011-01-01', u'2011-01-02', u'2011-01-03'], freq='D')
idx.__repr__()
# <class 'pandas.tseries.period.PeriodIndex'>
# freq: D
# [2011-01-01, ..., 2011-01-03]
# length: 3
idx.__unicode__()
# PeriodIndex([u'2011-01-01', u'2011-01-02', u'2011-01-03'], freq='D')
idx.__str__()
# PeriodIndex([u'2011-01-01', u'2011-01-02', u'2011-01-03'], freq='D')
idx.__bytes__()
# PeriodIndex([u'2011-01-01', u'2011-01-02', u'2011-01-03'], freq='D')