Discuss / Python / 遇到麻烦了,有没有大神帮忙看看这个程序哪错了

遇到麻烦了,有没有大神帮忙看看这个程序哪错了

Topic source

佳jiajia乐

#1 Created at ... [Delete] [Delete and Lock User]

name=input('请输入要查询的姓名:')

s1=input('请输入上一次成绩:')

s2=input('请输入这次成绩:')

r=100*(s2-s1)/s1

print('%s,你的成绩提升了%.1f%%'%('name',r))

有没有大神帮忙看看这个程序哪出错了 ball ball

宿臾洛城

#2 Created at ... [Delete] [Delete and Lock User]

input 出来的是字符串,所以s2-s1是不可行的。需要把字符串转成整数或者浮点数,你可以 type(s1) 看到他的类型

所以  r=100*(s2-s1)/s1 改成 r=100*(int(s2)-int(s1))/int(s1)

另外,name是引用的变量对象,如果你加了’‘默认认为他是个字符串了。所以最后一行打印的name需要去掉单引号

镭射伦敦

#3 Created at ... [Delete] [Delete and Lock User]

name=input(str('请输入要查询的姓名:'

s1=int(input('请输入上一次成绩:'))

s2=int(input('请输入这次成绩:'))

r=100*(s2-s1)/s1

print('%s,你的成绩提升了%.1f%%'%('name',r))

用int(input),也可以用str(input)强制输出对应的数据类型

其实可加一个while True,就可以一直往里面加数据,封装成一个函数是最好的

就这样

佳jiajia乐

#4 Created at ... [Delete] [Delete and Lock User]

哇 真的很感谢两位的指正 本人是刚开始自学的小菜鸡 有很多不懂的地方还要麻烦各位大佬  谢谢谢谢


  • 1

Reply