39
39
"the C extensions first." .format (module )
40
40
)
41
41
42
- from datetime import datetime
43
-
44
42
from pandas ._config import (
45
43
get_option ,
46
44
set_option ,
@@ -211,6 +209,20 @@ class Panel:
211
209
pass
212
210
213
211
return Panel
212
+
213
+ elif name == "datetime" :
214
+ warnings .warn (
215
+ "The datetime class is removed from pandas. Accessing it from "
216
+ "the top-level namespace will also be removed in the next "
217
+ "version" ,
218
+ FutureWarning ,
219
+ stacklevel = 2 ,
220
+ )
221
+
222
+ from datetime import datetime
223
+
224
+ return datetime
225
+
214
226
elif name in {"SparseSeries" , "SparseDataFrame" }:
215
227
warnings .warn (
216
228
"The {} class is removed from pandas. Accessing it from "
@@ -224,7 +236,6 @@ class Panel:
224
236
225
237
raise AttributeError ("module 'pandas' has no attribute '{}'" .format (name ))
226
238
227
-
228
239
else :
229
240
230
241
class Panel :
@@ -236,6 +247,28 @@ class SparseDataFrame:
236
247
class SparseSeries :
237
248
pass
238
249
250
+ class Datetime :
251
+ def __init__ (self ):
252
+ from datetime import datetime
253
+ import warnings
254
+
255
+ self .datetime = datetime
256
+ self .warnings = warnings
257
+
258
+ def __getattr__ (self , item ):
259
+ self .warnings .warn (
260
+ "The pandas.datetime module is deprecated and will be removed from pandas in a future version. "
261
+ "Import numpy directly instead" ,
262
+ FutureWarning ,
263
+ stacklevel = 2 ,
264
+ )
265
+ try :
266
+ return getattr (self .datetime , item )
267
+ except AttributeError :
268
+ raise AttributeError (f"module datetime has no attribute { item } " )
269
+
270
+ datetime = Datetime ()
271
+
239
272
240
273
# module level doc-string
241
274
__doc__ = """
0 commit comments