Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从sqlite行中提取单个值_Python_Sqlite - Fatal编程技术网

Python 从sqlite行中提取单个值

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

我在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_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是的,它们只是碰巧代表标记的普通字符串。像处理任何字符串一样处理它们。@链接它工作得非常好。。。它以逗号分隔字符串。空间是另一个问题。我建议您在一本像样的教程中找到字符串操作部分,或者至少浏览一下。例如,请参见。