Skip to main content

common kit.

Project description

1 db package: 数据库模块包

1.1 sk_common.db.db_helper

​ 1.1.1 class DBHelper()

​ 1.1.2 conn_commit ()

​ 1.1.3 destroy ()

​ 1.1.4 get_cursor ()

​ 1.1.5 read_table_to_df ()

1.2 sk_common.db.sqlserver_in_out

​ 1.2.1 bcp_in ()

​ 1.2.2 bcp_out ()

2 file package: 文件读写模块包

2.1 sk_common.file.file_reader

​ 2.1.1 read_csv_txt_to_df ()

​ 2.1.2 read_excel_to_df ()

​ 2.1.3 read_h5_to_dict ()

​ 2.1.4 read_json_to_dict ()

​ 2.1.5 read_txt_to_list ()

2.2 sk_common.file.file_writer

​ 2.2.1 write_df_to_csv_txt ()

​ 2.2.2 write_df_to_excel ()

​ 2.2.3 write_df_to_multi_sheet ()

​ 2.2.4 write_dict_to_json ()

​ 2.2.5 write_list_to_h5 ()

​ 2.2.6 write_list_to_txt ()

1 db package

1.1 db.db_helper module

连接sql server 或者mysql数据库,进行sql语句操作,可读取数据到pandas dataframe

1.1.1 class db.db_helper.DBHelper(db_kind, driver, server, user, pwd, database, port='0')

​ Bases: object

1.1.2 conn_commit()

​ 执行建表或删表等操作后,做connection commit

1.1.3 destroy()

关闭cursor和connection

1.1.4 get_cursor(sql)

执行sql语句,返回对应cursor

Parameters

sql – 要执行的sql语句

Returns

对应cursor

1.1.5 read_table_to_df(sql)

读取数据库表并存为pandas dataframe

Parameters

sql – sql查询语句

Returns

pandas dataframe

1.2 db.sqlserver_in_out module

对sql server数据库bcp导入和导出批量数据

1.2.1 db.sqlserver_in_out.bcp_in(server, user, pwd, file_path, table_name, port='0')

bcp导入txt文件到sql server数据库表,表需要提前创建好

Parameters
  • server – str, 服务器ip

  • user – str, 账号

  • pwd – str, 密码

  • file_path – str, 导入的txt文件地址

  • table_name – str,导入到数据库的表名

  • port – str,端口号,默认’0’

1.2.2 db.sqlserver_in_out.bcp_out(server, user, pwd, file_path, content_out, port='0', kind='table')

bcp导出数据库表或查询结果到txt文件

Parameters
  • kind – str,’table’或者’query’, 若为’table’导出整个表数据,若为’query’导出查询结果,默认’table’

  • server – str, 服务器ip

  • user – str, 账号

  • pwd – str, 密码

  • file_path – str, 导出的txt文件地址

  • content_out – str,表名或者sql 查询语句,例如:’[MTNOH_APP_SameCoverage].[dbo].[TB_同覆盖基础能力_数据_同覆盖小区_test] ‘

  • port – str,端口号,默认’0’

2 file package

2.1 file.file_reader module

用于读取不同格式的数据, 包括txt, csv,excel, HDF5 , json

2.1.1 file.file_reader.read_csv_txt_to_df(filepath_or_buffer, encoding=None, sep=',', delimiter=None, header='infer', index_col=None, chunksize=None, prefix=None, dtype=None, engine=None, compression='infer')

读取csv或txt等文件数据到pandas DataFrame

Parameters
  • filepath_or_buffer – str, 读取的文件路径,URL(包含http,ftp,s3)链接等。

  • encoding – str, default None, 指定字符集编码类型,通常指定为’utf-8’。

  • sep – str, 文件分割符。

  • delimiter – str, default None,定界符,备选分隔符(如果指定该参数,则sep参数失效)。

  • header – int or list of ints, default ‘infer’, 指定行数用来作为列名,数据开始行数。如果文件中没有列名,则默认为0,否则设置为None。

  • index_col – int or sequence or False, default None, 用作行索引的列编号或者列名,如果给定一个序列则有多个行索引。

  • chunksize – int, default None,文件块的大小。

  • prefix – str, default None, 在没有列标题时,给列添加前缀。

  • dtype – type, default None, 每列数据的数据类型。

  • engine – {‘c’, ‘python’}, optional 使用的分析引擎, 可以选择C或者是python, C引擎快但是Python引擎功能更加完备。

  • compression

    {‘infer’,‘gzip’, ‘bz2’, ‘zip’, ‘xz’, None}, default ‘infer’

    直接使用磁盘上的压缩文件。如果使用infer参数,则使用 gzip, bz2, zip或者解压文件名中以

    ‘.gz’, ‘.bz2’, ‘.zip’, or ‘xz’这些为后缀的文件,否则不解压

Returns

pandas DataFrame

2.1.2 file.file_reader.read_excel_to_df(io, encoding='utf-8', sheet_name=0, header=0, names=None, index_col=None, usecols=None, dtype=None, engine=None, skiprows=None, nrows=None, na_values=None, keep_default_na=True)

读取excel数据到pandas DataFrame, 支持从本地文件系统或URL读取的xls,xlsx,xlsm,xlsb和odf文件扩展名。 支持读取单一sheet或几个sheet。

Parameters
  • io – str, bytes, ExcelFile, xlrd.Book, path object, or file-like object。

  • encoding – str, 数据集的字符编码,默认’utf-8’。

  • sheet_name – str, int, list, None, default 0, 默认为0,表示不输入sheet_name的参数下,默认引用第一张sheet的数据。

  • header – int, list of int, default 0,表示用第几行作为表头, 默认header=0,即默认第一行为表头。None表示不使用数据源中的表头。

  • names – array-like, default None,表示自定义表头的名称,需要传递数组参数。

  • index_col – int, list of int, default None, 指定列为索引列,默认为None,也就是索引为0的列用作DataFrame的行标签。

  • usecols – int, str, list-like, or callable default None, 需要解析的列,默认为None,解析所有列。

  • dtype – type, default None,指定列的数据类型,默认为None,不改变数据类型。

  • engine – str, default None,支持参数有“ xlrd”,“ openpyxl”或“ odf”,用于使用第三方的库去解析excel文件。

  • skiprows – int,list, defalut None, 跳过指定的行

  • nrows – int, default None,指定需要读取前多少行,通常用于较大的数据文件中。

  • na_values – scalar, str, list-like, or dict, default None,指定某些列的某些值为NaN。

  • keep_default_na – bool, default True,表示导入数据时是否导入空值。

Returns

pandas DataFrame

2.1.3 file.file_reader.read_h5_to_dict(file_path, name_list=None)

读取HDF5文件数据到字典

Parameters
  • file_path – str, HDF5文件路径。

  • name_list – list, default None, 所需key的数组,默认为None,则包含所有key。

Returns

存储hdf5数据字典。

2.1.4 file.file_reader.read_json_to_dict(file_path, encoding='utf-8')

读取json文件数据到字典

Parameters
  • file_path – str, json文件路径。

  • encoding – str, default ‘utf-8’, 指定字符集编码类型,默认为’utf-8’。

Returns

json数据存储字典

2.1.5 file.file_reader.read_txt_to_list(file_path, encoding='utf-8', line_strip='\n', sep=',')

读取txt文件数据到list

Parameters
  • file_path – str, 文件路径。

  • encoding – str, default ‘utf-8’, 指定字符集编码类型,通常指定为’utf-8’。

  • line_strip – str, default ',' 行分割符,默认','

  • sep – str default ‘,’, 每行中字段分隔符, 默认’,’

Returns

多维数组,每一维为每行数据,维度为文件的数据行数

2.2 file.file_writer module

用于将数据写入不同格式文件 包括txt, csv,excel, HDF5 , json

2.2.1 file.file_writer.write_df_to_csv_txt(df, file_path, index=False, encoding='utf-8', mode='w', header=True, sep=',', columns=None, index_label=None, compression='infer', line_terminator=None, chunksize=None, date_format=None)

存入dataframe数据到csv或txt文件

Parameters
  • df – pandas dataframe,需要写入的dataframe数据。

  • file_path – str, 文件目标路径。

  • index – bool, default False, 是否显示索引,默认False,不显示index。

  • encoding – str ,数据集的字符编码,默认’utf-8’。

  • mode – str, 写入模式,默认为 ‘w’。

  • header – bool, list, default True 写出列名。如果给定字符串列表,则假定它是列名称的别名。

  • sep – str, default “,” , 输出文件的字段分隔符,默认”,”。

  • columns – list,选择需要输出的的列名数组。默认None。

  • index_label – str, default None,设置索引列的列名。

  • compression – str,表示压缩模式,默认’infer’。

  • line_terminator – str,输出文件中使用的换行符或字符序列。

  • chunksize – int,写入的批次个数,默认 None,一次性写入。

  • date_format – str,日期时间对象的格式字符串,默认None。

Returns

bool 是否写入成功,成功为True,失败为False。

2.2.2 file.file_writer.write_df_to_excel(df, file_path, sheet_name='Sheet1', na_rep='', columns=None, header=True, index=False, index_label=None, engine=None, encoding='utf-8')

存入dataframe数据到excel文件

Parameters
  • df – pandas dataframe,需要写入excel的dataframe数据。

  • file_path – str, excel文件目标路径。

  • sheet_name – str, default “Sheet1”,excel表名命名。

  • na_rep – int, str, default “”, 缺失值填充,默认值为空字符串。

  • columns – list,选择需要输出的的列名数组。

  • header – bool, list, default True 写出列名。如果给定字符串列表,则假定它是列名称的别名。

  • index – bool, default False, 是否显示索引,默认False,不显示index。

  • index_label – str, default None,设置索引列的列名。

  • engine – str, default None, 所使用的写引擎。

  • encoding – str ,数据集的字符编码,默认’utf-8’。

Returns

bool 是否写入成功,成功为True,失败为False

2.2.3 file.file_writer.write_df_to_multi_sheet(file_path, df_list, sheet_name_list, na_rep='', columns=None, header=True, index=False, index_label=None, engine=None, encoding='utf-8')

将dataframe数组写入excel多张sheet中

Parameters
  • file_path – str, excel文件目标路径。

  • df_list – list,存储多个dataframe。

  • sheet_name_list – list,包含每张表的表名。

  • na_rep – int, str, default “”, 缺失值填充,默认值为空字符串。

  • columns – list,选择需要输出的的列名数组。

  • header – bool, list, default True 写出列名。如果给定字符串列表,则假定它是列名称的别名。

  • index – bool, default False, 是否显示索引,默认False,不显示index。

  • index_label – str, default None,设置索引列的列名。

  • engine – str, default None, 所使用的写引擎

  • encoding – str ,数据集的字符编码,默认’utf-8’。

Returns

bool 是否写入成功,成功为True,失败为False

2.2.4 file.file_writer.write_dict_to_json(dict, file_path, encoding='utf-8')

写入字典数据到json文件

Parameters
  • dict – 字典,需写入json文件的数据。

  • file_path – str,json文件目标路径。

  • encoding – str ,数据集的字符编码,默认’utf-8’。

Returns

bool 是否写入成功,成功为True,失败为False。

2.2.5 file.file_writer.write_list_to_h5(data_list, name_list, file_path)

将data数据和key数组一一对应写入目标h5文件

Parameters
  • data_list – list,需要写入h5文件的数据数组

  • name_list – list,需要写入h5文件的key数组

  • file_path – str,h5文件目标路径

Returns

bool 是否写入成功,成功为True,失败为False。

2.2.6 file.file_writer.write_list_to_txt(data_list, file_path, encoding='utf-8', line_strip='\n', sep=',')

将数组写入txt文件中

Parameters
  • data_list – list,需要写入txt的数据,格式为[[a,b,c],[d,e,f],…..],每一维写入同一行。

  • file_path – str, txt文件目标路径。

  • encoding – str ,数据集的字符编码,默认’utf-8’。

  • line_strip – str ,default '\n',行分隔符,默认'\n' 。

  • sep – str default ‘,’, 每行中字段分隔符, 默认’,’。

Returns

bool 是否写入成功,成功为True,失败为False。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sk_common-0.1.3-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file sk_common-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: sk_common-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.7.10

File hashes

Hashes for sk_common-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c090adab05df44041b00bfce6eb7dd6df8e19be502852054270dea1ebdc15575
MD5 39db4d7d4857a393d1fb40430a76c50d
BLAKE2b-256 5d8d1d1868bee36ec883dc8d6bbe49331995c3dbfef30566f4397c523849537b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page