【问题标题】:Convert MySQLdb return from tuple to string in Python在 Python 中将 MySQLdb 返回从元组转换为字符串
【发布时间】: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”。那么谁能给我一些建议或参考书我应该检查?

提前致谢!

【问题讨论】:

    标签: django mysql-python


    【解决方案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
    猜你喜欢
    • 2012-06-11
    • 1970-01-01
    • 2019-07-28
    • 2012-03-20
    • 2013-11-07
    • 2021-05-30
    • 1970-01-01
    相关资源
    最近更新 更多