xlin 0.1.20__py2.py3-none-any.whl → 0.1.21__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
xlin/read_as_dataframe.py CHANGED
@@ -13,7 +13,7 @@ from xlin.xls2xlsx import is_xslx
13
13
 
14
14
 
15
15
  def read_as_dataframe(
16
- filepath: Union[str, Path],
16
+ filepath: Union[str, Path, list[str], list[Path]],
17
17
  sheet_name: Optional[str] = None,
18
18
  fill_empty_str_to_na=True,
19
19
  filter=lambda x: True,
@@ -21,11 +21,9 @@ def read_as_dataframe(
21
21
  """
22
22
  读取文件为表格。如果是文件夹,则读取文件夹下的所有文件为表格并拼接
23
23
  """
24
- filepath = Path(filepath)
25
- if filepath.is_dir():
26
- paths = ls(filepath, filter=filter, expand_all_subdir=True)
24
+ if isinstance(filepath, list):
27
25
  df_list = []
28
- for path in paths:
26
+ for path in filepath:
29
27
  try:
30
28
  df = read_as_dataframe(path, sheet_name, fill_empty_str_to_na, filter)
31
29
  df["数据来源"] = path.name
@@ -36,6 +34,10 @@ def read_as_dataframe(
36
34
  if fill_empty_str_to_na:
37
35
  df.fillna("", inplace=True)
38
36
  return df
37
+ filepath = Path(filepath)
38
+ if filepath.is_dir():
39
+ paths = ls(filepath, filter=filter, expand_all_subdir=True)
40
+ return read_as_dataframe(paths, sheet_name, fill_empty_str_to_na, filter)
39
41
  filename = filepath.name
40
42
  if filename.endswith(".json") or filename.endswith(".jsonl"):
41
43
  try:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xlin
3
- Version: 0.1.20
3
+ Version: 0.1.21
4
4
  Summary: toolbox for LinXueyuan
5
5
  License: MIT
6
6
  Author: LinXueyuanStdio
@@ -3,13 +3,13 @@ xlin/ischinese.py,sha256=Ia9IMQ6q-UHkdLwqS70L1fTnfSPbluFrv_I1UqsKquo,293
3
3
  xlin/jsonl.py,sha256=Ogn_9eIx1NPmI_hMvBVwuDTooJYDEJ8FTtViQ8zTVlQ,7618
4
4
  xlin/metric.py,sha256=N7wJ35y-C-IaBr1I1CJ_37lTG7gA69zmn9Xg6xSwKoI,1690
5
5
  xlin/multiprocess_mapping.py,sha256=dRXQoLaG1dK_qZ8B3bJblV0RKM2gqIeSW1EaOZbIdD0,14251
6
- xlin/read_as_dataframe.py,sha256=T8A4qk4Grof_WC_mNz4QVaWDQgJ103rUAQ8tsamm8SQ,8898
6
+ xlin/read_as_dataframe.py,sha256=MqY57L7Wp9UoWTRlZLSBKQNaZa-dKw51-ufrKvHKf8s,9041
7
7
  xlin/statistic.py,sha256=i0Z1gbW2IYHCA0lb16w1Ncrk0Q7Q1Ttm0n4we-ki6II,9301
8
8
  xlin/timing.py,sha256=XMT8dMcMolOMohDvAZOIM_BAiPMREhGQKnO1kc5s6PU,998
9
9
  xlin/util.py,sha256=TTWJaqF5D_r-gAZ_fj0kyHomvCagjwHXQZ2OPSgwd54,10976
10
10
  xlin/xls2xlsx.py,sha256=uSmXcDvIhi5Sq0LGidMXy0wErNBXdjaoa6EftYVjTXs,947
11
11
  xlin/yaml.py,sha256=kICi7G3Td5q2MaSXXt85qNTWoHMgjzt7pvn7r3C4dME,183
12
- xlin-0.1.20.dist-info/LICENSE,sha256=60ys6rRtc1dZOP8UjSUr9fAqhZudT3WpKe5WbMCralM,1066
13
- xlin-0.1.20.dist-info/METADATA,sha256=DW9S85CerwgeiPFFETvVEai0OmxdIcoKSt9UXvIg71s,1098
14
- xlin-0.1.20.dist-info/WHEEL,sha256=IrRNNNJ-uuL1ggO5qMvT1GGhQVdQU54d6ZpYqEZfEWo,92
15
- xlin-0.1.20.dist-info/RECORD,,
12
+ xlin-0.1.21.dist-info/LICENSE,sha256=60ys6rRtc1dZOP8UjSUr9fAqhZudT3WpKe5WbMCralM,1066
13
+ xlin-0.1.21.dist-info/METADATA,sha256=A1bA5C4gOZOVZGYdfaWNmA2yTBIKZL25ZKtPH7XIris,1098
14
+ xlin-0.1.21.dist-info/WHEEL,sha256=IrRNNNJ-uuL1ggO5qMvT1GGhQVdQU54d6ZpYqEZfEWo,92
15
+ xlin-0.1.21.dist-info/RECORD,,
File without changes
File without changes