解析一串图形数据
项目描述
图解析器
graphparser 为使用字符串(例如作为 Jupyter 笔记本的一部分)输入微小图形提供了一个原始函数。函数“parsing.parse”读取多行字符串并返回节点和边。节点和边可以有属性。
节点是通过书写单词来定义的。边是为相邻单词(节点的 ID)隐式定义的。属性是由等号分隔的键值对字符串。节点的属性被放置在它们应该被分配到的节点之上或之下。边的属性放置在边的上方或下方(两个节点之间的空间)。
示例_1
distance=23km temperature=220_K
node1 node2 node3
color=red cost=48 price=45EUR age=10e6_d
hight=20.0cm
但是,目的是提供一些伪图形支持。非单词字符可用于使结构可见。
示例_2
distance=23km temperature=220_K
node1<<------------------------------->>node2<<----------------------->>node3
color=red cost=48 price=45EUR age=10e6_d
hight=20.0cm
running[*parse(Example_1)]
创建节点和边缘数据的列表:
[('node', 'node1', ('node2',), {'color': 'red', 'hight': '20.0cm'}),
('edge', ('node1', 'node2'), {'distance': '23km', 'cost': '48'}),
('node', 'node2', ('node1', 'node3'),
{'temperature': '220_K', 'price': '45EUR', 'age': '10e6_d'}),
('edge', ('node2', 'node3'), {}),
('node', 'node3', ('node2',), {})]
节点数据元组: 0. 'node' 1. 节点 ID(名称) 2. 相邻节点元组(节点 ID) 3. 属性字典
边缘数据元组: 0. 'edge' 1. 相邻节点的元组 (left_node, right_node) 2. 属性字典
一个文本行具有节点数据或属性数据。第一个检测到的实体的类型是完整行的类型。放置在节点行中的属性将被跳过,反之亦然。以“#”开头的行将被忽略。“空白”行既不是节点行,也不是边缘行,也不是注释行。到节点行之间必须至少存在一个“空白”行(任意非单词字符是可能的)。节点线和相关属性之间不存在“空白”线。
Example_3
distance=23km temperature=220_K
node1<<------------------------------->>node2<<----------------------->>node3
color=red cost=48 price=45EUR age=10e6_d
hight=20.0cm
~~~ ~~~ ~~~ ~~~ ~~~ ~~~ ~~~
distance=23km temperature=220_K
node4<<------------------------------->>node5<<----------------------->>node6
color=red cost=48 price=45EUR age=10e6_d
hight=20.0cm
属性的第一个字符用于查找关联的节点/边。当节点以下划线开始/结束时,不会创建边。节点的第一个和最后一个下划线不是 ID(名称)的一部分。这提供了将节点放置在一个没有关系的文本行中的机会。属性链是由单个逗号或空格分隔的属性。再次使用属性序列的第一个字符来查找关联的节点/边。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
graphparser-0.8.1.tar.gz
(21.8 kB
查看哈希)
内置分布
graphparser-0.8.1-py3-none-any.whl
(21.7 kB
查看哈希)
关
graphparser -0.8.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2332a9da3bf90819739e476a77134441bad6770159b8a641c4f348124b24fe30 |
|
MD5 | 839ed0511b9f20595c5a5e9998104acf |
|
布莱克2-256 | d1134b0eabf80cd8ed1f3ff8f596641bb1f32f3fed4a4393e9f0575fc496a12f |
关
graphparser -0.8.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4acdde49635cc7bcc18c2d8604331d202ac48f035ee0e4e3847af60855f6d9fe |
|
MD5 | 7a2d215cbd261732b16b3d310ebc41c8 |
|
布莱克2-256 | c940c1a9ac8132c927a18c9f1f8a98926d0c6f5d31dc5984c266481b024acc35 |