akcw 发表于 2021-5-16 20:17:19

多行输入并存入字典中<新人求助>

题目要求:

请从标准输入录入多个国家的名字和对应的GDP,存入GDP字典中。(字典不为空)

【样例输入】

USA 95

China 80

Japan 50

ok

【样例说明】

输入为多行,分别是以空格分隔开的国家和对应的GDP值,以"ok"结束

GDP = {

'USA': 95,

'China': 80,

'Japan': 50

}

Twilight6 发表于 2021-5-16 20:48:52


while 循环 if 判断输入是否为 ok 以及题目要求字典不为空, 即可实现:

参考代码:

GDP = {}
while True:
    user_input = input()
    if user_input == 'ok':
      if not GDP:
            print('GDP字典不能为空')
            continue
      break
    nation,gdp = user_input.split()
    GDP = int(gdp)
print(GDP)

若没有要求字典不为空则可以直接将是否输入 ok 来当作 while 循环条件

参考代码:

user_input = input()
GDP = {}
while user_input != 'ok':
    nation,gdp = user_input.split()
    GDP = int(gdp)
    user_input = input()
print(GDP)

qq1151985918 发表于 2021-5-16 20:54:16

本帖最后由 qq1151985918 于 2021-5-16 20:58 编辑

GDP = { }
while True:
    print(len(GDP) + 1, end = ".")
    inData = input("请输入国家和对应的GDP以空格分隔(输入“ok”退出):")
    if inData == "ok":
      break
    if len(inData.split()) != 2:
      print("----输入错误请重新输入",end = "\n----")
      continue
    else:
      GDP] = inData.split()[-1]
print(GDP)   
页: [1]
查看完整版本: 多行输入并存入字典中<新人求助>