Python 3.x 从fetchall输出中删除字符-Python
如何从fetchall输出中删除以下内容:Python 3.x 从fetchall输出中删除字符-Python,python-3.x,sqlite,Python 3.x,Sqlite,如何从fetchall输出中删除以下内容: [('test',)] 我正在寻找的输出: 'test' 我尝试使用x.strip,但它在本例中不起作用,并且引发了以下错误AttributeError:“NoneType”对象没有属性“strip” 谢谢你的帮助 代码示例: 您可以使用replace的嵌套版本 select replace(replace(replace(replace(replace('[(''test'',)]', '[',''),']',''),'(',''),')',''
[('test',)]
我正在寻找的输出:
'test'
我尝试使用x.strip,但它在本例中不起作用,并且引发了以下错误AttributeError:“NoneType”对象没有属性“strip”
谢谢你的帮助
代码示例:
您可以使用replace的嵌套版本
select replace(replace(replace(replace(replace('[(''test'',)]', '[',''),']',''),'(',''),')',''),',','')
看起来很难看,但很管用。
这背后的逻辑是:
替换'Your string','x','y'
其中x是要替换的数字
y是你想放在它的位置上的数字
另一个逻辑是使用translate内置函数
select translate('[(''test'',)]', '()[]{},', ' ');
翻译“你的字符串”,“ab”,“cd”
将a替换为c,将b替换为d。所以你可以插入左边不想要的数字和右边空白空间。使用结果[0 ] [0 ]谢谢,但是它没有工作,什么是错误?不要说NameError:名称“result”未定义x[0][0],结果没有改变,它仍然是原来的样子。如果不将其分配给某个对象,它不会改变。谢谢,但在这种情况下,每次从sql获得不同的输出时,我都必须硬编码值x,y。
select translate('[(''test'',)]', '()[]{},', ' ');