繁体   English   中英

Python:如何使用f字符串进行数学运算

[英]Python: How to do math using f-string

我正在尝试使用python 3.6的新f字符串功能在墙上编写自己的99瓶啤酒的实现,但是我被卡住了:

def ninety_nine_bottles():
    for i in range(10, 0, -1):
        return (f'{i} bottles of beer on the wall, {i} of beer! You take one down, pass it around, {} bottles of beer on the wall')

如何减少最后一对括号中的“ i”? 我尝试过i- = 1无济于事(语法错误)...

您正在寻找{i - 1} i -= 1是f字符串中不允许的语句。

除此之外,您不应该从函数中返回。 这只会导致for循环的第一次迭代执行。 而是print或创建字符串列表并加入它们。

最后,考虑将瓶子的起始值传递到ninety_nine_bottles

总之,请使用以下命令:

def ninety_nine_bottles(n=99):
    for i in range(n, 0, -1):
        print(f'{i} bottles of beer on the wall, {i} of beer! You take one down, pass it around, {i-1} bottles of beer on the wall')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM