gpt4 book ai didi

python - try except 在一个 while 循环中

转载 作者:太空宇宙 更新时间:2023-11-04 07:18:42 27 4
gpt4 key购买 nike

我在 while 循环中遇到了 try except 问题。我对编程还是比较陌生,这是我的 A2 Comp4 项目的一部分。

def CheckValidInitials(initials):
CheckIfTrue = False
Count = 1
while CheckIfTrue == False:
while len(initials) == int(3) or len(initials) == int(4):
listInitials = list(initials)
print(len(initials))
while len(listInitials) - Count >= 0:
print(len(initials))
print(len(listInitials) - Count)
Count = Count + 1
print(listInitials)
try:
int(listInitials[Count])
except IndexError and ValueError:
CheckIfTrue = True
else:
print("One of your initials is a number, this is not valid")
print()
Count = 1
initials = input("Please enter valid initials: ")
listInitials = list(initials)

else:
initials = input("Please enter valid initials: ")
return initials

我一直收到这个错误:

  File "D:\A2 Computing\Comp4\Prototype\Prototype Mk 3\TeacherInfo.py", line 105, in CheckValidInitials
int(listInitials[Count])
IndexError: list index out of range

我的问题是,我认为我在 try except 中排除了 IndexError。它应该会抛出这个问题。

整个代码应该检查首字母(在另一个函数中输入)是否包含任何数字。

最佳答案

The syntax for multiple exceptions是:

except (RuntimeError, TypeError, NameError):

and 不是此语法的可识别部分; IndexError 和 ValueError 的计算结果为 ValueError,因此不会捕获任何 IndexError

关于python - try except 在一个 while 循环中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29165202/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com