Python Tkinter Mysql select语句在字符串周围返回花括号

时间:2019-01-26 06:54:53

标签: python mysql python-2.7 tkinter curly-braces

我正在从mysql数据库中的值动态填充tkinter中的按钮文本。

单个单词显示良好,但是带有多个单词的字符串显示时带有大括号。我不确定是否是因为它们被视为元组或其他一些非字符串数据类型。

我感觉这是Mysql存储数据的方式,但是不确定如何在输入或输出上处理它以避免这种情况。

任何帮助将不胜感激。

这是Mysql中的选择查询。 Table data

这是select语句:

def getChannelName(channel):
    mydb = mysql.connector.connect(
        host=DBHost,
        user=Uname,
        passwd=Pword,
        database=Dbase
    )
    mycursor = mydb.cursor(buffered=True)
    sql = "SELECT InputName FROM tbl_input WHERE tbl_input.InputChannel = '%s'" % (channel)
    mycursor.execute(sql) 
    r = mycursor.fetchone()
    mycursor.close()
    del mycursor
    return r

编辑:我在“ return r”之前添加了print(r)以显示数据库中的值。 SELECT query result

这是从以下位置调用选择查询的地方:

def initChannelNames(activeInputs):
# Read all the ADC channel names in a list 
    inputs = [0]*activeInputs
    for index in range(len(inputs)):
        inputs[index] = getChannelName(index)
    return inputs

这是我使用数据的地方。我正在动态创建按钮,并将查询到的数据用作按钮文本。

inputs = initChannelNames(activeInputs)
#set the selectors
for index in range(len(inputs)):
    Button(selectorStackContainer, text=inputs[index], image=ledImg, width=Button_w, height=Button_h, command=callback, font=("Courier", 11), bg='grey', fg='black', compound = "left", anchor="w").grid(row=index, sticky="w")

最后这就是按钮上显示的内容: Output on the GUI

0 个答案:

没有答案