python打印不出结果_python – 如何只将1个结果打印到控制台而不是两个?

我的代码有问题,但我知道问题是什么.等级有2个字符,因此显示2个结果,每个结果加0.3.这是一个问题,因为只有一个结果应该打印到控制台.

keydict = {'A': 4.0,'B': 3.0,'C': 2.0,'D': 1.0,'F': 0, '+': 0.3, '-': -0.3}

grade = input('Grade:')

def letter2number(letter):

if len(grade) > 2:

print('Too many characters')

letter2number(grade)

for char in grade:

if char in keydict:

if '+' in grade:

print(keydict[char] + keydict['+'])

elif '-' in grade:

print(keydict[char] + keydict['-'])

else:

print(keydict[char])

else:

print(grade,'is an invalid input')

return

letter2number(grade)

这是在用户输入“A”(或任何带有”或’ – ‘的等级)后打印到屏幕上的内容.我发现for循环导致了这个问题,因为输入中有2个字符.但我不认为没有使用for循环有另一种方法可以做到这一点.预计4.3,0.6不是我想要的.

Grade: A+ # <<< Thats a user input

4.3 # <<< YES

0.6 # <<< How can I get this to NOT print

除了打印0.6之外,我对代码没有其他问题.换句话说,我不希望0.6有,但4.3应该留下来.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值