#coding=utf-8
card = ['huihui','xiaomei','xiaowei','ashun']
while True:
InPut = raw_input("添加用户(1) 删除用户(2) 更改用户(3) 查找用户(4) 退出请按(5):")
#整形
inPut = int(InPut)
if inPut == 1:
add = raw_input('请输入要添加的用户名:')
#添加成功
card.append(add)
print('你已添加成功')
for d in card:
print(d)
image()
elif inPut == 2:
for d in card:
print(d)
i =raw_input('请输入要删除用户的序号:')
nameLen = len(card)
#没有删除直接跳到下面的 'else'语句中路了
if i <= nameLen-1:
del card[int(i)]
else:
print("-"*20) #打印分割线
#执行完删除后 打印列表
for d in card:
print(d)
#一下条件没问题
看上没有问题,尝试在 del card[int(i)] 前后,用print函数 打印 card 列表 和 i 试试,看看可不可以找出 bug
你del card[int(i)]删除元素的时候,都知道要把字符串i转换为整型,为何上一句if条件判断的时候不把i强制转换
if int(i) <= nameLen-1:
del card[int(i)]