如何在 python 的嵌套列表中添加项目?来自用户输入

how to add items in a nested list in python? from user input

进入第一个嵌套列表后出现错误-"IndexError: list index out of range"

def add_hotel(name,n,ac,fb,tv,wifi,budget):
                room=[[]]
                room[2][1]=name

                if(n>0):
                    for i in range(2,n+2):
                                room[i][1]=1
                                if(ac=="y" or"Y"):
                                    room[i][2]="Air Conditioning"

                                else:
                                    room[i][2]="No Air Conditioning"
                                if(fb=="y" or "Y" ):
                                    room[i][3]="Free Breakfast"
                                else:
                                    room[i][3]="Free Breakfast Not Available"
                                if(tv=="y" or "Y"):
                                    room[i][4]="TV Available"
                                else:
                                    room[i][4]="No TV"
                                if(wifi=="y" or "Y"):
                                    room[i][5]="Wifi"
                                else: 
                                    room[i][5]="No Wifi"

                                room[i][5]=budget
                                print(room)
                print(room)

这里 n 是房间数,我从索引 2 初始化它,因为我有两个预定义的列表实体。 我希望我的输出看起来像这样-(n=2)

[[hayat,1,"No Air Conditioning","Free Breakfast Not available","No TV","Wifi",30],[hayat,2,"No Air Conditioning","Free Breakfast Not available","TV available","Wifi",50]]

您正在使用

room[i][2]="Air Conditioning"

但是room[i]列表中没有位置2

做什么

你应该使用函数 listname.append(val)

room[i].append("Air Conditioning")

你的代码变成

def add_hotel(name,n,ac,fb,tv,wifi,budget):
                room=[]
                room_tmp=[name]

                if(n>0):
                    for i in range(2,n+2):




                                room_tmp.append(1)
                                if(ac=="y" or"Y"):
                                    room_tmp.append("Air Conditioning")

                                else:
                                    room_tmp.append("No Air Conditioning")
                                if(fb=="y" or "Y" ):
                                    room_tmp.append("Free Breakfast")
                                else:
                                    room_tmp.append("Free Breakfast Not Available")
                                if(tv=="y" or "Y"):
                                    room_tmp.append("TV Available")
                                else:
                                    room_tmp.append("No TV")
                                if(wifi=="y" or "Y"):
                                    room_tmp.append("Wifi")
                                else: 
                                    room_tmp.append("No Wifi")

                                room_tmp.append(budget)
                                room.append(room_tmp)
                                print(room)
                print(room)

我不明白你在做什么,你的答案仍然是这样的