SSV代表分隔符分隔值。
项目描述
Python分隔符分隔值包
摘要
SSV代表分隔符分隔值。这听起来像是一个笑话,但实际上很有用。
描述
SSV是一种将表格数据(平面文件数据库)保存为纯文本文件中的分隔符分隔值的格式。与其他格式(如CSV或TSV)相比,分隔符冲突几乎不可能发生。SSV不使用逗号(CSV)、制表符(TSV)和换行符,而是使用记录分隔符 RS 和单元分隔符 US 来进行 数据结构,这在文本数据中根本不应该出现。
该格式是ASCII分隔文本的一个示例。ASCII分隔文本没有官方标准,SSV会做出可能被认为是具有争议性的决定。总的来说,简单性和易于实现是优先考虑的,而不是其他因素。例如,SSV不支持对RS和US的转义。
格式
SSV文件可以用以下W3C EBNF正式描述
SSV ::= Record (RS Record)*
Record ::= Unit (US Unit)*
Unit ::= UnitChar*
UnitChar ::= Char - (RS | US)
Char ::= /* see http://www.w3.org/TR/xml#NT-Char */
RS ::= #x1E
US ::= #x1F
表记录(行)由记录分隔符RS分隔。每个记录包含一个或多个单元(字段),这些单元由单元分隔符US分隔。一个单元可以包含零个或多个字符,不包括RS和US。因此,一个空文件是有效的SSV文件,表示一个1行1列的表,其中包含一个空字段。
API示例
import ssv
# simple table
table = [['A1', 'B1', 'C1'],
['A2', 'B2', 'C2']]
# encode table as SSV string
ssv.dumps(table) # 'A1\x1fB1\x1fC1\x1eA2\x1fB2\x1fC2'
# write table to SSV file
ssv.dumpf(table, 'data.ssv')
# load table from SSV file
new_table = ssv.loadf('data.ssv')
assert table == new_table
历史
0.1.1 (2016-05-29)
改进文档。
0.1.0 (2016-05-29)
首次发布在PyPI。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分发
ssv-0.1.1.tar.gz (5.2 kB 查看哈希值)
构建分发
ssv-0.1.1-py3-none-any.whl (6.8 kB 查看哈希值)
关闭
ssv-0.1.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8eed40bd37312516d619efd681603a1b29ee50d796c424ed7d6e64c1e8689454 |
|
MD5 | 2208baab8069a843bf65aa96a684659e |
|
BLAKE2b-256 | b58c0ff5ebc89e2d01c3fb0806e9aa27f18fd7ef71f36a7e5f8ab9dba3a40330 |
关闭
ssv-0.1.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 66062f95f42bfcc3378580c5171b1497335dc4179e7255b4ff8fa85acce44871 |
|
MD5 | 90e689bc9228d3e718479ab6d86d53c2 |
|
BLAKE2b-256 | 3a3ba12b18448711355d6ef172d5c9cf28d19570d7fbf7272214b840f1bb36c9 |