Python RDF库-节点的字符串值
我正在使用RDF库从在线三元组存储中检索值 我想知道将URIRef和文字转换为普通字符串对象的理想方法是什么 例如:Python RDF库-节点的字符串值,python,rdf,rdflib,Python,Rdf,Rdflib,我正在使用RDF库从在线三元组存储中检索值 我想知道将URIRef和文字转换为普通字符串对象的理想方法是什么 例如: value = g.value(s,FOAF.page) 我应该使用value.n3(),还是value.\uuu str\uuuu()?有什么区别吗?在我的测试中,两者都返回一个看起来相同的刺痛 最初我只是存储值,但结果表明它在字符串比较期间会导致问题,因此我只想存储一个字符串,因为提取后没有与rdf相关的处理。如果您想要文本的字符串内容,请使用str(value)。注意,这
value = g.value(s,FOAF.page)
我应该使用value.n3()
,还是value.\uuu str\uuuu()
?有什么区别吗?在我的测试中,两者都返回一个看起来相同的刺痛
最初我只是存储值,但结果表明它在字符串比较期间会导致问题,因此我只想存储一个字符串,因为提取后没有与rdf相关的处理。如果您想要文本的字符串内容,请使用
str(value)
。注意,这会丢弃一些信息——数据类型和语言——它们是RDF模型的一部分
作为比较:
lit = rdflib.term.Literal('Literal\nvalue', lang='en')
print(str(lit))
print('---')
print(lit.n3())
给出:
Literal
value
---
"""Literal
value"""@en
听起来你想要前者
请参见pydoc3 rdflib.term.Literal.n3
,了解有关n3()
方法返回内容的更多详细信息