Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/pandas/core/internals/__init__.py: 23%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

22 statements  

1from pandas.core.internals.api import make_block # 2023-09-18 pyarrow uses this 

2from pandas.core.internals.concat import concatenate_managers 

3from pandas.core.internals.managers import ( 

4 BlockManager, 

5 SingleBlockManager, 

6) 

7 

8__all__ = [ 

9 "Block", # pyright:ignore[reportUnsupportedDunderAll)] 

10 "BlockManager", 

11 "DatetimeTZBlock", # pyright:ignore[reportUnsupportedDunderAll)] 

12 "ExtensionBlock", # pyright:ignore[reportUnsupportedDunderAll)] 

13 "SingleBlockManager", 

14 "concatenate_managers", 

15 "make_block", 

16] 

17 

18 

19def __getattr__(name: str): 

20 # GH#55139 

21 import warnings 

22 

23 from pandas.errors import Pandas4Warning 

24 

25 if name == "create_block_manager_from_blocks": 

26 # GH#33892, GH#58715 

27 warnings.warn( 

28 f"{name} is deprecated and will be removed in a future version. " 

29 "Use public APIs instead.", 

30 Pandas4Warning, 

31 # https://github.com/pandas-dev/pandas/pull/55139#pullrequestreview-1720690758 

32 # on hard-coding stacklevel 

33 stacklevel=2, 

34 ) 

35 from pandas.core.internals.managers import create_block_manager_from_blocks 

36 

37 return create_block_manager_from_blocks 

38 

39 if name in [ 

40 "Block", 

41 "ExtensionBlock", 

42 "DatetimeTZBlock", 

43 ]: 

44 warnings.warn( 

45 f"{name} is deprecated and will be removed in a future version. " 

46 "Use public APIs instead.", 

47 Pandas4Warning, 

48 # https://github.com/pandas-dev/pandas/pull/55139#pullrequestreview-1720690758 

49 # on hard-coding stacklevel 

50 stacklevel=2, 

51 ) 

52 if name == "DatetimeTZBlock": 

53 from pandas.core.internals.api import _DatetimeTZBlock as DatetimeTZBlock 

54 

55 return DatetimeTZBlock 

56 if name == "ExtensionBlock": 

57 from pandas.core.internals.blocks import ExtensionBlock 

58 

59 return ExtensionBlock 

60 else: 

61 from pandas.core.internals.blocks import Block 

62 

63 return Block 

64 

65 raise AttributeError(f"module 'pandas.core.internals' has no attribute '{name}'")