TypeError:'float'对象不可订阅

bea*_*rdo 10 python indexing replace list insert

PizzaChange=float(input("What would you like the new price for all standard pizzas to be? "))      
PriceList[0][1][2][3][4][5][6]=[PizzaChange]  
PriceList[7][8][9][10][11]=[PizzaChange+3]
Run Code Online (Sandbox Code Playgroud)

基本上我有一个输入,用户将输入一个数值(浮点输入),然后它将所有这些上述列表索引设置为该值.出于某种原因,我无法在不提出问题的情况下设置它们:

TypeError: 'float' object is not subscriptable
Run Code Online (Sandbox Code Playgroud)

错误.我做错了什么,或者我只是以错误的方式看待它?

Jos*_*hua 13

PriceList[0]是一个浮动.PriceList[0][1]正试图访问浮动的第一个元素.相反,做

PriceList[0] = PriceList[1] = ...code omitted... = PriceList[6] = PizzaChange
Run Code Online (Sandbox Code Playgroud)

要么

PriceList[0:7] = [PizzaChange]*7
Run Code Online (Sandbox Code Playgroud)

  • 从 0 到 7 的切片有 7 个元素,而不是 6 个。 (2认同)

roi*_*ppi 5

PriceList[0][1][2][3][4][5][6]
Run Code Online (Sandbox Code Playgroud)

这表示:转到我收藏的第一项PriceList。那东西是一个集合;得到它的第二项。那东西是一个集合;得到它的第三个...

相反,你想要切片

PriceList[:7] = [PizzaChange]*7
Run Code Online (Sandbox Code Playgroud)