从python中的列表中删除多余的括号



我从数据库中得到了列表:

print(rows)
print(type(rows))
[('simplify expression: $$ \frac{1}{4} + \frac{1}{2} $$',), ('simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$',)]
<class 'list'>

我需要从列表中删除多余的括号、引号和逗号。结果我应该得到:

print(rows[0])
print(rows[1])
simplify expression: $$ \frac{1}{4} + \frac{1}{2} $$
simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$

我应该如何解决我的问题?

你可以做:

print(rows[0][0])
print(rows[1][0])

得到你想要的

您可以像这样转换行:

rows = [row[0] for row in rows]
print(rows)
['simplify expression: $$ \frac{1}{4} + \frac{1}{2} $$', 'simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$']

然后你可以像你一样简单地访问:

print(rows[0])
print(rows[1])
simplify expression: $$ \frac{1}{4} + \frac{1}{2} $$
simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$

解释:

你面临的问题(这并不是一个真正的问题:(,你在每个列表中都有元组,每个元组都包含一个元素,它不是一个更大的字符串或类似的东西,所以我更改了你的列表,去掉了不需要的元组。

您也可以进行

print(*rows[0]) # print the unpack tuple located at rows[0]
print(*rows[1]) # print the unpack tuple located at rows[1]

您可以直接使用循环,因为将来可能会有2个以上的循环
在这种情况下,数据库中有5个值。。。

代码:

rows = [('simplify expression: $$ \frac{1}{4} + \frac{1}{2} $$',),
('simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$',),
('simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$',),
('simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$',),
('simplify expression: $$ \frac{1}{3} + \frac{2}{3} $$',)]
total_count = len(rows)
for i in range(0, total_count):
print(rows[i][0])

输出:

simplify expression: $$ frac{1}{4} + frac{1}{2} $$
simplify expression: $$ frac{1}{3} + frac{2}{3} $$
simplify expression: $$ frac{1}{3} + frac{2}{3} $$
simplify expression: $$ frac{1}{3} + frac{2}{3} $$
simplify expression: $$ frac{1}{3} + frac{2}{3} $$

最新更新