接下来继续撸文档吧,不过又遇到了难题,下面介绍的record和table两个对象是v3中没有的,文档中也没有提供代码实例,那我就先简单地将文档翻译过来,后面应该还会涉及到。
1.4 Record对象
record对象是一个有序的键值对,有些类似namedtuple(根据廖雪峰的python教程:namedtuple具有tuple的不变性,又可以通过属性来引用),它同时扩展了tuple和mapping对象(python中mapping对象也就是dict)。
record[index] #根据序号引用
record[key] #根据属性引用
len(record) #返回属性数量
dict(record) #返回record对象的字典形式
data(*keys/indexes) #输入多个属性或序号,返回record中相应的键值对,返回结果为dict
get(key/index, default=None) #输入一个属性或序号,返回record中相应的值
index(key) #返回给定属性对应的序号
items(*keys/indexes) #输入多个属性或序号,返回一个list,其中的元素是(key,value)形式的元组(tuple)
keys() #返回keys的list
values(*keys/indexes) #输入多个属性或序号,返回对应的值的list
to_subgraph() #返回subgraph对象,它是record中所有图结构(节点、关系等)的并集
1.5 Table对象
table对象是一系列record对象的列表(list),通常来自cypher语句的查询结果,它提供了一些方法将结果转换为不同的输出格式。
repr(table) #将table转换为string(ASCII形式)
_repr_html_() #将table转换为string(HTML形式),这个方法由Jupyter notebooks用来在浏览器中显示table
keys() #返回keys的list
field(key) #返回dict,包括key对应value的type,numeric(是否数值型),optional(是否有None)
最后这个field(key)暂时不太理解有什么用。。。
下面这些都是以特定格式写入文件
write(file=None, header=None, skip=None, limit=None, auto_align=True, padding=1, separator='|', newline='\r\n')
write_html(file=None, header=None, skip=None, limit=None, auto_align=True)
write_separated_values(separator, file=None, header=None, skip=None, limit=None, newline='\r\n', quote='"')
write_csv(file=None, header=None, skip=None, limit=None)
write_tsv(file=None, header=None, skip=None, limit=None)