|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
cj=input("请输入你的成绩: ")
while cj !='e':
cj=int(cj)
if cj == 100:
print('S')
if 90<=cj<100:
print('A')
if 80<=cj<90:
print('B')
if 60<=cj<80:
print('C')
if cj<60:
print('D')
cj=input("请输入你的成绩:")
Traceback (most recent call last):
File "C:/Users/Lenovo/Desktop/笔记/成绩.py", line 4, in <module>
int(cj)
ValueError: invalid literal for int() with base 10: "80.9'"
int()函数只能将字符串类型的纯整数转换为整数类型,
如果字符串中包含小数点或其他非数字字符,则会出现ValueError错误。
在你的代码中,你输入了字符串“80.9”,其中包含小数点字符“.”,因此在使用int()函数时出现了错误。
要解决这个问题,你有两种方法:
一种是在输入成绩之前用float函数把它转换为浮点数,然后再用int函数把它转换为整数。例如:
- cj=input("请输入你的成绩: ")
- while cj !='e':
- cj=int(float(cj)) # 先用float函数再用int函数
- if cj == 100:
- print('S')
- if 90<=cj<100:
- print('A')
- if 80<=cj<90:
- print('B')
- if 60<=cj<80:
- print('C')
- if cj<60:
- print('D')
- cj=input("请输入你的成绩:")
复制代码
另一种是直接用float函数把成绩转换为浮点数,例如:
- cj=input("请输入你的成绩: ")
- while cj !='e':
- cj=float(cj) # 直接用float函数
- if cj == 100:
- print('S')
- if 90<=cj<100:
- print('A')
- if 80<=cj<90:
- print('B')
- if 60<=cj<80:
- print('C')
- if cj<60:
- print('D')
- cj=input("请输入你的成绩:")
复制代码
|
|