gpt4 book ai didi

python - 有没有办法在元组/列表列表中添加索引?

转载 作者:太空宇宙 更新时间:2023-11-04 00:05:53 27 4
gpt4 key购买 nike

假设我有一个元组列表

users = [('Ben', 13),
('Ana', 13),
('Max', 13)]

其中 ('Ben', 13) 将为 0 而 ('Ana', 13) 将为 1 ...

编辑

我有一个来自 PySimpleGUI 的表格,它显示了一个元组列表。选择表中的一行将返回行索引。我想获取与返回的行索引相关联的“用户 ID”,以便我可以在删除查询中使用它。

代码如下:

import sys
import mysql.connector
import PySimpleGUI as sg

def connect():
mydb = mysql.connector.connect(
host='localhost',
user='root',
passwd='maning',
database='usersdb'
)
return mydb

mydb = connect()
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM thesisdb.users")
data = mycursor.fetchall() #the list of tuples
headings = ['User ID', 'First Name', 'Last Name', 'Username', 'Password', 'Role']


layout = [[sg.Table(values=data, headings=headings, max_col_width=25,
auto_size_columns=True, bind_return_key=True, justification='right', num_rows=20, alternating_row_color='lightgreen', key='users')],
[sg.Button('Read'), sg.Button('Double')],
[sg.T('Read = read which rows are selected')],[sg.T('Double = double the amount of data in the table')]]

window = sg.Window('Table', grab_anywhere=False, resizable=True).Layout(layout)

while True:
event, values = window.Read()
rowIndex = values['users'] #the index of the selected row
sg.Popup(index) #displays the index of the selected row

据我所知,该表只能返回所选行的索引。这就是为什么我问是否可以为每个元组添加一个索引号,因为我想使用 rowIndex 来获取与所选行具有相同索引号的“用户 ID”。

希望删除查询是:

mycursor.execute("DELETE FROM usersdb.users WHERE user_ID = '%s'"% (userID))

最佳答案

@Ev 的评论。库尼斯是对的!元组列表中的每个元组都有一个索引。为了使列表可用作获取所选行的所需元素的参数,唯一要做的就是删除括号并将其转换为 int。

代码如下:

raw = values['users']
x = str(raw).replace('[', '').replace(']', '')
r_index = int(x)
userID = data[r_index][0]

关于python - 有没有办法在元组/列表列表中添加索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54094418/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com