我有一个Pyhton脚本,它从本地MySql表中提取单元格值,但是数据与字符串不一样。
例如,mysql值= fromme@server.com
我原来的工作方法运作得很好,它是这样写的:
chatFrom = 'fromme@server.com'然后,我在执行函数中使用了这个变量,如下所示:
chat.main(['-c', chatTo, '-u', chatFrom, '-p', chatPass, '-m', chatMessage])现在,我希望通过使用MySql表使变量动态:
chatToCursor = (cursor.execute('SELECT value from configuration WHERE label = "chatTo"'))
chatTo = cursor.fetchone()然后在完全相同的执行函数中使用它,但我得到的问题是,值在某种程度上是不一样的。Python抱怨在值中使用"@“。以前,它完全没有抱怨,因为我想是因为"chatTo“最初是一个字符串,所以它并不重要。
因此,即使我使用str(chatTo) python,仍然会抱怨@。
execute命令的语法如下:
chat.main(['-c', 'to@server.com', '-u', 'user@server.com', '-p', 'pass', '-m', 'message'])因此,在我的变量是单引号,也是混乱我。我应该如何编写它,以便使MySql游标与标准字符串相同?
发布于 2015-04-12 14:30:23
cursor.fetchone()总是返回一个元组,即使只有一个元素要返回。所以您的chatTo变量实际上是('to@server.com',)。
您需要显式地获得第一个元素:
chatTo = cursor.fetchone()[0]https://stackoverflow.com/questions/29590502
复制相似问题