救赎自我- 发表于 2021-10-7 10:00:25

19讲动动手第一题求教

19讲动动手 下面是我自己写的代码 为什么总是录入目标数之后就结束了 不能打印对应列表呢 求大神指点{:10_245:}

n = 0
nums = []

   
nums = input('请录入一个整数(输入STOP结束):')
while nums != "STOP":
    nums =
    n += 1
    nums = input('请录入一个整数(输入STOP结束):')
target = input('请录入目标整数:')



for i in range(n):
    for j in range(n):
      if nums + nums == target:
            print()# 将找到的两个元素下标值以列表的形式打印出来 #



================= RESTART: C:\Users\dell\Desktop\twoSum0.py =================
请录入一个整数(输入STOP结束):12
请录入一个整数(输入STOP结束):22
请录入一个整数(输入STOP结束):33
请录入一个整数(输入STOP结束):STOP
请录入目标整数:55
>>>
>>>
>>>
================= RESTART: C:\Users\dell\Desktop\twoSum0.py =================
请录入一个整数(输入STOP结束):11
请录入一个整数(输入STOP结束):22
请录入一个整数(输入STOP结束):33
请录入一个整数(输入STOP结束):3
请录入一个整数(输入STOP结束):STOP
请录入目标整数:33
>>>
>>>
================= RESTART: C:\Users\dell\Desktop\twoSum0.py =================
请录入一个整数(输入STOP结束):1
请录入一个整数(输入STOP结束):2
请录入一个整数(输入STOP结束):3
请录入一个整数(输入STOP结束):STOP
请录入目标整数:3
>>>
>>>
>>>

大马强 发表于 2021-10-7 10:24:50

n = 0
nums = []

# ni'y

num = input('请录入一个整数(输入STOP结束):')
while num != "STOP":
    nums.append(int(num))
    n += 1
    num = input('请录入一个整数(输入STOP结束):')
target = int(input('请录入目标整数:'))

# print(nums)
for i in range(n):
    for j in range(n):
      if nums + nums == target:
            print()# 将找到的两个元素下标值以列表的形式打印出来 #

大马强 发表于 2021-10-7 10:29:19

问题如下
1、input()接收输入返回的是字符串,不支持算数运算,只能拼接,所以要转化成整型 int(input)
2、添加列表元素要用其append()
3、不同作用的变量要区分,你都声明了nums是一个列表,你却用它接收字符串,要用两个变量实现

傻眼貓咪 发表于 2021-10-7 10:54:09

本帖最后由 傻眼貓咪 于 2021-10-7 10:55 编辑

arr = []
while True:
    try: arr.append(int(input("请录入一个整数(输入STOP结束):")))
    except: break
target = int(input("请录入目标整数:"))
) for i in range(len(arr)) for j in range(len(arr)) if i != j and arr+arr == target]

救赎自我- 发表于 2021-10-7 15:06:42

大马强 发表于 2021-10-7 10:29
问题如下
1、input()接收输入返回的是字符串,不支持算数运算,只能拼接,所以要转化成整型 int(input)
2 ...

感谢大佬

救赎自我- 发表于 2021-10-7 15:07:13

傻眼貓咪 发表于 2021-10-7 10:54


谢谢大佬!
页: [1]
查看完整版本: 19讲动动手第一题求教