功能更多的选择

时间:2017-03-28 22:20:33

标签: python python-2.7

我创建了一个简单的击键计数器代码,用于打印输入字母的数量。但是我试图弄清楚如何创建一个函数,因此它识别2个字母(单数和复数)中的1个字母。我想在我的代码中添加'stroke',当只输入一次键盘键时,我会输入"You entered 1 stroke"而不是"You entered 1 strokes."

我尝试了一些事情,但真的无法前进:

print('Start typing: ')
count = raw_input()
print('You entered:'), len(count), ('strokes')

3 个答案:

答案 0 :(得分:4)

只需使用正常条件,例如使用条件表达式:

print "You entered:", len(count), 'stroke' if len(count) == 1 else 'strokes'

另外,只是为了好玩,为了简洁解决方案而过于聪明,你不应该实际使用

print "You entered:", len(count), 'strokes'[:6+(len(count) != 1)]

或:

print "You entered:", len(count), 'stroke' + 's' * (len(count) != 1)

答案 1 :(得分:1)

您可以使用ifelse

if len(count) == 1:
    print 'you entered: 1 stroke'
else:
    print 'you entered: {} strokes'.format(len(strokes))

答案 2 :(得分:0)

您也可以使用字符串格式代替使用多个参数进行打印:

print "You entered {} stroke{}".format(len(count), "s"*(len(count)!=1))

不可否认,最后一部分有点奇特,但你当然也可以做到

print "You entered {} stroke{}".format(len(count), "s" if len(count) != 1 else "")