首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的代码总是打印数组中的第一个数据?

为什么我的代码总是打印数组中的第一个数据?
EN

Stack Overflow用户
提问于 2022-02-07 05:07:31
回答 2查看 52关注 0票数 2
代码语言:javascript
复制
i = 0
one_adult = [20.00,30.00]
one_child = [12.00,18.00]
one_senior = [16.00,24.00]
family_ticket = [60.00,90.00]
groups_of_six = [15.00,22.50]
lion_feeding = 2.50
penguin_feeding = 2.00
evening_barbecue = 5.00


Ticket_Type = ["one_adult",one_adult[i],"one_child",one_child[i],"one_senior",one_senior[i],"family_ticket",family_ticket[i],"groups_of_six",groups_of_six[i]]


Attractions_1day = ["lion_feeding",lion_feeding,"penguin_feeding",penguin_feeding]
Attractions_2day = ["lion_feeding",lion_feeding,"penguin_feeding",penguin_feeding,"evening_barbecue",evening_barbecue]


option = input("are you buying tickets for one day? (yes or no)")
if option == "yes" :
  print()
  print("These are ticket types available for one day tickets and their prices $")
  print()
  print(Ticket_Type)
  print()
  print("These are the attractions available for one day tickets and their prices $")
  print()
  print(Attractions_1day)
elif option == "no" :
  i = i + 1
  print()
  print("These are ticket types available for two day tickets and their prices $")
  print()
  print(Ticket_Type)
  print()
  print("These are the attractions available for two day tickets and their prices $")
  print()
  print(Attractions_2day)

为什么它总是在i=0时打印数据,而当i=1时不打印数据?它应该打印one_adult,30而不是one_adult 20等等。程序应该显示人们购买门票的选项(1天/2天)。

EN

回答 2

Stack Overflow用户

发布于 2022-02-07 05:23:35

移动线:

代码语言:javascript
复制
Ticket_Type = ["one_adult",one_adult[i],"one_child",one_child[i],"one_senior",one_senior[i],"family_ticket",family_ticket[i],"groups_of_six",groups_of_six[i]]

to ifelif子句

代码语言:javascript
复制
if option == "yes" :
//Here
  Ticket_Type = ["one_adult",one_adult[i],"one_child",one_child[i],"one_senior",one_senior[i],"family_ticket",family_ticket[i],"groups_of_six",groups_of_six[i]]
  print()
  print("These are ticket types available for one day tickets and their prices $")
  print()
  print(Ticket_Type)
  print()
  print("These are the attractions available for one day tickets and their prices $")
  print()
  print(Attractions_1day)
elif option == "no" :
  i = i + 1
//And here.
  Ticket_Type = ["one_adult",one_adult[i],"one_child",one_child[i],"one_senior",one_senior[i],"family_ticket",family_ticket[i],"groups_of_six",groups_of_six[i]]
  print()
  print("These are ticket types available for two day tickets and their prices $")
  print()
  print(Ticket_Type)
  print()
  print("These are the attractions available for two day tickets and their prices $")
  print()
  print(Attractions_2day)
票数 1
EN

Stack Overflow用户

发布于 2022-02-07 05:21:31

正确地检查您的代码,您已经指定了i=0,并且在Ticket_type数组中的每一个位置都放置了one_adult[i],这只是数组的第一个元素,即"20“。在每次迭代之后,您都没有增加i的值。就像您必须放置循环来增加值,以便打印数组的其他元素一样。

为了解决你的问题,做这个

代码语言:javascript
复制
["one_adult",one_adult[0],"one_child",one_child[1],"one_senior",one_senior[2],"family_ticket",family_ticket[3],"groups_of_six",groups_of_six[4]]

如果这是有帮助的,或者你想要更好的解释,请回答。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71013771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档