Python RDF库-节点的字符串值

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)。注意,这

我正在使用RDF库从在线三元组存储中检索值

我想知道将URIRef和文字转换为普通字符串对象的理想方法是什么

例如:

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()
方法返回内容的更多详细信息