我正在做"事物的数量"在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 有一个国王
答案 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