我不明白我做错了什么!
x=7
List=[]
for i in range(0,x):
verify=False
while verify==False:
Values=input("Enter Code")
verify=Values.isdigit()
ValueList=int(Values)
List.append(ValueList)
value1=int(List[0])
value2=int(List[1])
value3=int(List[2])
value4=int(List[3])
value5=int(List[4])
value6=int(List[5])
value7=int(List[6])
value8p1=(value1*1)+(value2*3)+(value3*1)+(value4*3)+(value5*1)+(value6*3)+(value7*1)
value9=math.ceil(value8p1//10)
print(value9)
我的老师也不知道,我觉得这有点蠢......
答案 0 :(得分:2)
这只是一个缩进问题。
import math
x=7
List=[]
for i in range(0,x):
verify=False
while verify==False:
Values=input("Enter Code")
verify=Values.isdigit()
ValueList=int(Values)
List.append(ValueList)
value1=int(List[0])
value2=int(List[1])
value3=int(List[2])
value4=int(List[3])
value5=int(List[4])
value6=int(List[5])
value7=int(List[6])
value8p1=(value1*1)+(value2*3)+(value3*1)+(value4*3)+(value5*1)+(value6*3)+(value7*1)
value9=math.ceil(value8p1//10)
print(value9)
答案 1 :(得分:1)
如果我输入1234
,则Values
包含字符串"1234"
。
然后将字符串转换为整数
ValueList=int(Values) # converts string "1234" to integer 1234
将整数添加到空列表
List.append(ValueList)# List not looks like this List=[1234]
因此,您的列表中只包含一个元素
因此List[1]
超出范围
btw:请勿在内置名称list
之后命名您的值
请查看官方naming conventions。
修改强>
当您更正缩进时,您的代码仍然存在危险
如果您将x
更改为某事< 7你的代码会崩溃。
仍然危险的代码
x=7
List=[]
for i in range(0,x):
verify=False
while verify==False:
Values=input("Enter Code")
verify=Values.isdigit()
ValueList=int(Values)
List.append(ValueList)
value1=int(List[0])
value2=int(List[1])
value3=int(List[2])
value4=int(List[3])
value5=int(List[4])
value6=int(List[5])
value7=int(List[6])
value8p1=(value1*1)+(value2*3)+(value3*1)+(value4*3)+(value5*1)+(value6*3)+(value7*1)
value9=math.ceil(value8p1//10)
print(value9)
因此,您应该在循环中进行计算以避免索引错误:
更新代码
x = 4
values = []
for i in range(0, x):
verify = False
while verify == False:
value = input("Enter Code")
verify = value.isdigit()
values.append(int(value))
result = 0
for index, value in enumerate(values):
if index % 2 == 0:
result += value * 3
else:
result += value
finalResult = math.ceil(result // 10)
print(finalResult)
答案 2 :(得分:1)
这是工作代码:
import math
x=7
List=[]
for i in range(0,x):
verify=False
while verify==False:
Values=raw_input("Enter Code")
verify=Values.isdigit()
print verify
ValueList=int(Values)
List.append(ValueList)
value1=int(List[0])
value2=int(List[1])
value3=int(List[2])
value4=int(List[3])
value5=int(List[4])
value6=int(List[5])
value7=int(List[6])
value8=(value1*1)+(value2*3)+(value3*1)+(value4*3)+(value5*1)+(value6*3)+(value7*1)
value9=math.ceil(value8//10)
print(value9)