剥离()的优雅方式python
Elegant way to strip() python
我必须用 Python 剥离()我的数据库输出,它已经可以工作了。但是有没有更优雅的方法来做到这一点?
这是我的代码:
import MySQLdb
conn= MySQLdb.connect("localhost","root","testPW","MixOMat")
c=conn.cursor()
c.execute("SELECT Zutat1 FROM Rezepte WHERE RezeptID=1")
z1=str(c.fetchall())
z1=z1.strip("(")
z1=z1.rstrip(")")
z1=z1.rstrip(",")
z1=z1.rstrip(")")
z1=z1.rstrip(",")
z1=z1.rstrip("L")
print(z1)
只需使用一个for循环
for e in ["(",")", ","...]:
z1=z1.strip(e)
功能方法:
from functools import reduce
z1 = reduce(lambda x: z1.strip(x), ["(",")", ","...])
甚至只是:
z1 = z1.strip("".join(["(",")", ","...]))
import MySQLdb
conn= MySQLdb.connect("localhost","root","notna99","MixOMat")
c=conn.cursor()
c.execute("SELECT Zutat1 FROM Rezepte WHERE RezeptID=1")
z1=str(c.fetchall())
z1=z1.strip("(").rstrip(")").rstrip(",").rstrip(")").rstrip(",").rstrip("L")
print(z1)
这是另一种方法,或者您可以使用切片。
首先,.strip
参数是你要去除的字符,所以只需要调用2次
z1 = z1.strip('(').rstrip(')L')
其次,你做错了,获取数据的正确方法(我认为)应该是:
c.execute("SELECT Zutat1 FROM Rezepte WHERE RezeptID=1")
(z1, ) = c.fetchone()
请注意,我假设您只有一行要检索
这将直接检索一个整数而不是字符串表示
我必须用 Python 剥离()我的数据库输出,它已经可以工作了。但是有没有更优雅的方法来做到这一点?
这是我的代码:
import MySQLdb
conn= MySQLdb.connect("localhost","root","testPW","MixOMat")
c=conn.cursor()
c.execute("SELECT Zutat1 FROM Rezepte WHERE RezeptID=1")
z1=str(c.fetchall())
z1=z1.strip("(")
z1=z1.rstrip(")")
z1=z1.rstrip(",")
z1=z1.rstrip(")")
z1=z1.rstrip(",")
z1=z1.rstrip("L")
print(z1)
只需使用一个for循环
for e in ["(",")", ","...]:
z1=z1.strip(e)
功能方法:
from functools import reduce
z1 = reduce(lambda x: z1.strip(x), ["(",")", ","...])
甚至只是:
z1 = z1.strip("".join(["(",")", ","...]))
import MySQLdb
conn= MySQLdb.connect("localhost","root","notna99","MixOMat")
c=conn.cursor()
c.execute("SELECT Zutat1 FROM Rezepte WHERE RezeptID=1")
z1=str(c.fetchall())
z1=z1.strip("(").rstrip(")").rstrip(",").rstrip(")").rstrip(",").rstrip("L")
print(z1)
这是另一种方法,或者您可以使用切片。
首先,.strip
参数是你要去除的字符,所以只需要调用2次
z1 = z1.strip('(').rstrip(')L')
其次,你做错了,获取数据的正确方法(我认为)应该是:
c.execute("SELECT Zutat1 FROM Rezepte WHERE RezeptID=1")
(z1, ) = c.fetchone()
请注意,我假设您只有一行要检索
这将直接检索一个整数而不是字符串表示