Python 从sqlite行中提取单个值
我在sqlite3db中有一列。此列包含单个条目的一个或多个值 我说的是标签栏。 我想做的是将它们提取为单个元素。 所以我开发了这个代码:Python 从sqlite行中提取单个值,python,sqlite,Python,Sqlite,我在sqlite3db中有一列。此列包含单个条目的一个或多个值 我说的是标签栏。 我想做的是将它们提取为单个元素。 所以我开发了这个代码: import sqlite3 db = sqlite3.connect('db\\archivio') db.row_factory = lambda cursor, row: row[0] c = db.cursor() tags = c.execute("SELECT tags from documenti").fetchall() lista_t
import sqlite3
db = sqlite3.connect('db\\archivio')
db.row_factory = lambda cursor, row: row[0]
c = db.cursor()
tags = c.execute("SELECT tags from documenti").fetchall()
lista_tags = []
for i in tags:
lista_tags.append(i)
#user_tag = input('Insert tag to search for: ')
for val in lista_tags:
print(val)
结果是:
hansel, gretel
cappuccetto, rosso, lupo
signore, anelli, gollum
blade,runner
pinocchio
incredibili
问题是我无法将它们逐个添加到列表中。
如果您打印lista_标签,这是输出:
['hansel, gretel', 'cappuccetto, rosso, lupo', 'signore, anelli, gollum', 'blade,runner', 'pinocchio', 'incredibili']
如何将这组值添加到列表中的单个值中
['hansel', 'gretel', 'cappuccetto', 'rosso', 'lupo', 'signore', 'anelli', 'gollum', 'blade','runner', 'pinocchio', 'incredibili']
列表是值的集合,所以您可以在lista_标记中附加值,以便获得所有值
对于标签中的i:
lista_tags.appendi
如果您想通过使用键访问单个值
lista_标签[1]
它会给你单一的价值
假设您的标签=['hansel,gretel','Cappucceto,rosso,lupo','signore,anelli,gollum','blade,runner','pinocchio','incredibili']在您抓取后,您可以通过以下方式实现您的结果:
lista_tags = []
for entry in tags:
lista_tags += entry.split(",")
输出将是:
['hansel', ' gretel', 'cappuccetto', ' rosso', ' lupo', 'signore', ' anelli', ' gollum', 'blade', 'runner', 'pinocchio', 'incredibili']
您需要迭代列表,拆分逗号上的字符串并删除多余的空格。然后,您可以将这些值累积到另一个列表中。如果您刚开始使用逗号分隔的字符串,您也可以这样做:mystring.split','。@glibdud,因此我必须将.split应用到列表中的值?@Link是的,它们只是碰巧代表标记的普通字符串。像处理任何字符串一样处理它们。@链接它工作得非常好。。。它以逗号分隔字符串。空间是另一个问题。我建议您在一本像样的教程中找到字符串操作部分,或者至少浏览一下。例如,请参见。