Python 我得到索引器:列表索引超出范围
错误 addGuest中第11行的文件“D:/hotel2.py” 来宾[i]。追加(姓名) 索引器:列表索引超出范围 酒店2.pyPython 我得到索引器:列表索引超出范围,python,python-3.x,Python,Python 3.x,错误 addGuest中第11行的文件“D:/hotel2.py” 来宾[i]。追加(姓名) 索引器:列表索引超出范围 酒店2.py def addGuest(): i = 0 j = 0 global guestid name = input("Please enter guest name:\n") guests[i].append(name) guests[j].append(guestid) print("Guest %s has
def addGuest():
i = 0
j = 0
global guestid
name = input("Please enter guest name:\n")
guests[i].append(name)
guests[j].append(guestid)
print("Guest %s has been created with guest ID: %d" % (guests[i], guests[j]))
i += 1
j += 1
guestid += 1
我真正想做的是存储
guestid
和guestname
,这样我可以在输入guestid
时显示guestname
。但是这个函数不允许我这样做。对于key:value
对,您最好使用字典,而不是两个列表:
guestid2name = {}
def addGuest():
name = raw_input('enter guest name:\n')
global guestid
guestid2name[guestid] = name
print("Guest %s has been created with guest ID: %d" % (name, guestid))
这将创建guestid的
guestid2name
数据结构,并将客人的姓名作为值。它比使用两个不同的列表来实现相同的目标要有效得多。对于key:value
对,您最好使用字典,而不是使用两个列表:
guestid2name = {}
def addGuest():
name = raw_input('enter guest name:\n')
global guestid
guestid2name[guestid] = name
print("Guest %s has been created with guest ID: %d" % (name, guestid))
这将创建guestid的
guestid2name
数据结构,并将客人的姓名作为值。这比使用两个不同的列表来实现同一目标要有效得多。听起来你需要一本字典……我在这里没有看到任何问题。你有什么特别的要求吗?听起来你需要一本字典…我在这里没有看到任何问题。您是否有特定的要求?或许可以将此词典命名为比d
更具描述性的名称,例如guestid2name
。或者将此词典命名为比d
更具描述性的名称,例如guestid2name
。