在 Python 中将 MySQLdb 返回从元组转换为字符串
Posted
技术标签:
【中文标题】在 Python 中将 MySQLdb 返回从元组转换为字符串【英文标题】:Convert MySQLdb return from tuple to string in Python 【发布时间】:2012-03-30 08:48:15 【问题描述】:我是 mysqldb 的新手。我需要从存储在 MySQL 中的预定义数据库中读取值。我的问题是收集值时,它们是元组格式,而不是字符串格式。所以我的问题是:有没有办法将元组转换为字符串?
以下是我的代码的详细信息
import MySQLdb
#get value from database
conn = MySQLdb.connect("localhost", "root", "123", "book")
cursor = conn.cursor()
cursor.execute("SELECT koc FROM entries")
Koc_pre = str(cursor.fetchone())
#create a input form by Django and assign pre-defined value
class Inp(forms.Form):
Koc = forms.FloatField(required=True,label=mark_safe('K<sub>OC</sub> (mL/g OC)'),initial=Koc_pre)
#write out this input form
class InputPage(webapp.RequestHandler):
def get(self):
html = str(Inp())
self.response.out.write(html)
输出是元组格式“Koc=('5',)”,但我想要“koc=5”。那么谁能给我一些建议或参考书我应该检查?
提前致谢!
【问题讨论】:
【参考方案1】:如果您一次只检索一个值(即使用 cursor.fetchone() 获取一列),那么您只需更改代码以便获得元组中的第一个元素。
Koc_pre = str(cursor.fetchone()[0])
【讨论】:
谢谢!如果我需要检索多个值(我可能一次取一行)怎么办? 不幸的是,解决这个问题的唯一方法是手动为元组赋值(id = tuple[0]
、col1 = tuple[1]
等)。我建议编写一个通用的 MySQL 命令函数来提交查询并返回一个元组。这样您就可以在需要的地方更轻松地处理返回的元组。
谢谢。还有推荐的 Python-MySQL 项目书籍吗?
我不知道任何专门关于 Python 和 MySQL 的书籍。我唯一的建议是独立学习 Python 和 MySQL。一旦掌握了它,通过 MySQLdb API 的实际交互就非常简单了。
空值怎么样?我明白了:TypeError: 'NoneType' object is not subscriptable以上是关于在 Python 中将 MySQLdb 返回从元组转换为字符串的主要内容,如果未能解决你的问题,请参考以下文章