Python小饰品的数量挑战

时间:2018-04-03 13:04:57

标签: python if-statement

我正在做"事物的数量"在Python Trinket网站(https://hourofpython.trinket.io/python-challenges#/string-challenges/number-of-things-challenge)上进行挑战,并且能够按照Clever Programmer youtube频道上的教程提供帮助。

挑战根据列表中的[0] int创建一个复数的句子。在[1]槽中,字符串" trinket"将作为"小饰品"返回添加一个'最后。

为了更进一步,我想添加一行,看到一个单词结束于' (在我的例子中'老板')并添加' es'而不是'。我尝试在第一个 if 语句之后使用 elif 语句,但它会不断追加" s"。我希望第一个声明说'#34;有5个老板"

我现在是一名学习Python的新手。请温柔哈哈。

textField

打印: 有5个bosss 有一个国王

2 个答案:

答案 0 :(得分:0)

我会让你的if语句更明确。现在,您检查the_list[0] >是否已elif,然后's'检查该字词是否以def how_many(the_list): dg = str(the_list[1]) if the_list[0] > 1: return "There are " + str(the_list[0]) + ' ' + the_list[1] + \ ('s' if dg[-1] != 's' else 'es') else: return "There is " + str(the_list[0]) + ' ' + the_list[1] print(how_many([5, "boss"])) print(how_many([1, "king"])) 结尾,因此当您需要时,这将永远不会达到。

我建议使用Python的三元运算符来检查要使用的条件,然后附加必要的内容。

    There are 5 bosses
    There is 1 king

输出:

keras.json

答案 1 :(得分:0)

如果the_list[0] > 1

,我会再次检查dg[-1] != "s"
def how_many(the_list):
  # Add code here that returns the answer
  dg = str(the_list[1])
  if the_list[0] > 1:
      if dg[-1] == "s":
          return "There are " + str(the_list[0]) + ' ' + the_list[1] + 'es' 
      else:
          return "There are " + str(the_list[0]) + ' ' + the_list[1] + 's'
  else:
      return "There is " + str(the_list[0]) + ' ' + the_list[1]

# Add print statements here to test what your code does:"""
print(how_many([5, "boss"]))
print(how_many([1, "king"]))
# There are 5 bosses
# There is 1 king