1.首先,你要弄懂别人在干嘛
解释如下:
a.定义了一个n,指定了循环的次数,range(1,8),代表后面的循环你要输入8次价值和质量,如图右下角
b.定义了两个空列表list_c和list_z
c.每当你输入价值和质量之后,会计算一个(价值/质量)放在avg里面
d.上面定义的list_c放c计算的avg,list_z放入了另一个list,这个list包含3个元素,你输入的质量,c中计算的到的avg,和一个标签(0表示没被取走,1表示被取走)
e.运行完各个变量的值在图右上角。
所以你该怎么做呢?
方案1:
你不用定义另外两个变量存你的质量和价值,你直接在list_c和list_z里面改就好了
假设你输入了三组数据价值分别为1,2,3,质量分别为,5,6,7
list_c=[1/5,2/6,3/7]
list_z=[[5,1/5,0],[6,2/6,0],[7,3/7,0]]
后面的循环都不需要了
方案2:
你还是定义两个变量来存你的质量和价值
list_c=[0,0,0](0的个数与你的质量个数一样)
list_z=[0,0,0]
input_c=[1,2,3]
input_d=[5,6,7]
for i in range(len(input_c)):
list_c[i]=input_c[i]/input_d[i]
list_z[i]=[]
list_z[i].append(input_d[i])
list_z[i].append(list_c[i])
list_z[i].append(0)
ok了
tips:不要直接复制黏贴,,貌似提示符号错误
图的质量有点差,我截成三个图