1、ValueError: invalid literal for int() with base 10:
得到ValueError是因为int型不能将空字符串转换为整数,说明是我在转换之前得到了一个空的字符串,或者说字符串作为参数到int检查之前它是空的或包含字母字符而不能对其进行转换,所以在转换的过程中出现了错误。
如果要判断输入内容是否等于某个数字时,首先你输入的应该是个数字,使用isdigit()方法判断输入的是否为数字,然后才满足判断条件,再去判断
输出商品列表,用户输入序号,显示用户选中的商品
商品 li = ["手机", "电脑", '鼠标垫', '游艇']
要求:1:页面显示 序号 + 商品名称,如:
1 手机
2 电脑
…
2: 用户输入选择的商品序号,然后打印商品名称
3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。
4:用户输入Q或者q,退出程序。
li = ["手机", "电脑", '鼠标垫', '游艇']
for i in li:
print('\t{}\t\t{}'.format(li.index(i)+1,i))
while 1:
s=input('请输入序号:')
if s.isdigit():
if int(s)>0 and int(s)<=len(li):
print(li[int(s)-1])
else:
print('请输入有效数字')
elif s.upper()=='Q':
break
else:
print('请输入数字')
2、break 只能在循环中使用 判断语句不在循环中不能直接 使用break
3、道阻且长,