Python列表一作业的最后一题
想知道为什么我的代码跑不出来结果num = []
i = 0
while(i<1000):
n = random.randint(1,65535)
list1=
num+=list1
i+=1
target = input('请输入目标值:')
l = len(num)
for i in range(l):
for j in range(i+1, l):
if num + num == target:
print()
求助各位大佬!!! 本帖最后由 qq1151985918 于 2022-7-16 17:14 编辑
如果这就是全部代码的话 可能是 第一行少了
import random
倒数第二行 改成 int(target) 本帖最后由 临时号 于 2022-7-16 17:25 编辑
import random
num = []
i = 0
while(i<1000):
n = random.randint(1,65535)
list1=
num+=list1
i+=1
target = int(input('请输入目标值:'))
l = len(num)
for i in range(l):
for j in range(i+1, l):
if num + num == target:
print() 临时号 发表于 2022-7-16 17:20
import random #改了这里
num = []
i = 0
while(i<1000):
n = random.randint(1,65535)
list1=
num+=list1
i+=1
target = int(input('请输入目标值:')) #改了这里
l = len(num)
for each in zip(range(l),range(1,l)): #改了这里
print(each,target)
if num] + num] == target: #改了这里
print(, each])
临时号 发表于 2022-7-16 17:20
注意你再运行完后不会出现任何结果,
这是因为你可以在运行完后查看一下 i 等于多少,是 1000 ,但应该是 0 ,
所以直接用 0 + 1 来代替......{:10_277:} import random
num = []
i = 0
while(i<1000):
n = random.randint(1,65535)
list1=
num+=list1
i+=1
target = int(input('请输入目标值:'))
l = len(num)
for i in range(l):
for j in range(i+1, l):
print(i,j,target) #检验,发现 i 一直不变
if num + num == target:
print()
{:10_324:}{:10_277:} python爱好者. 发表于 2022-7-16 17:30
我不知道为什么,这个i在我的电脑上运行是变化的 临时号 发表于 2022-7-16 17:36
我不知道为什么,这个i在我的电脑上运行是变化的
是变化的,但是因为我刚改的第三个错误会与之形成冲突,所以不能再用 i 了 @wp231957 帮帮忙{:10_257:} python爱好者. 发表于 2022-7-16 17:52
@wp231957 帮帮忙
可是我不知道这个题目有啥需求啊 临时号 发表于 2022-7-16 17:20
为啥不加这个转换就出不了结果呢 养乐多好恰 发表于 2022-7-16 21:37
为啥不加这个转换就出不了结果呢
input函数默认返回的返回值是字符串类型的,而num+num是整数类型
字符串类型和整数类型比较当然返回False了,所以需要将input函数返回的返回值转化为整数 临时号 发表于 2022-7-16 21:39
input函数默认返回的返回值是字符串类型的,而num+num是整数类型
字符串类型和整数类型比较当然返回Fa ...
感谢大佬
页:
[1]