xlsx module

class xlsx.XLSX(file, enc, root_name=None, forms=None)[source]

Bases: object

xlsx 具象操作クラス

DEBUG = True
check_charcode(item, valid_enc=None)[source]
generate_json(sheet_name=None, acc=None)[source]

sheet_nameが指すsheetのJSONをaccに追加する

Parameters:
  • sheet_name (str) – 別シートに分かれるitemのシート名 Noneの場合はrootと認識
  • acc – rootから伝播されるaccumrator
Returns この処理から得られた連想配列が追加されたaccumratorを返す:
 
generate_leaf(parent, key, l, schema)[source]
schemaに従ったitemを生成
NOTE: recursive procが分解されている事に留意
Parameters:
  • parent – 幹になるJSON
  • key – leafのkey指定
  • l – list sheet名
  • schema – leafについて記述されたschema 型が記述されていること
Returns leafとして成立したJSONを連想配列で返す:
 
generate_sheet(name)[source]
output_to_csv(base_path, sheet, enc)[source]

CSV, TSV出力

piled_schema
外部IF
実態は __all_schema: {sheet: [schemas]}
classmethod put_cell_comment(cell, text, author='jsonica.py')[source]
classmethod renew_acc(schema)[source]
schema
classmethod store(item, accumulator)[source]

評価済みが保証された値を、rootのleafに連結

Parameters:accumlator – either dict or list
Returns 連結された状態のacc:
 
type_validator(sheet_name, value, type_desc, validator=<Validator.jsonschema: 'jsonschema'>)[source]
Validator switcher
validation を passしたら成功した**評価値のみ**を返す
失敗したら、その場でcommand errorとする
Parameters:
  • sheet_name (str) – 評価対象sheet名
  • value – 評価対象JSON
  • type_desc – schema (format TBD)
Returns 部分的にtype_descを満たすことが保証されたJSON: