我正在从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)以显示数据库中的值。
这是从以下位置调用选择查询的地方:
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")