【发布时间】:2022-10-26 00:04:25
【问题描述】:
def CreditPay(rate, payment, verbose):
balance = 1000 # Amount currently owed
month = 1 #Number of months
paid = 0 # Amount paid so far
while balance > payment:
balance = balance + balance*rate/100 - payment
paid += payment
if verbose:
print(f'Balance after month {month} is $ {balance}.')
month += 1
print(f"Final payment is $ {balance}")
print(f'Final amount paid is $ {balance+paid}')
return month
nmonths = CreditPay(2.5,100,False)
print("Number of months to pay off is", nmonths)
nmonths = CreditPay(2.5,100,True)
print("Number of months to pay off is", nmonths)
^
SyntaxError:无效的语法 martin@Martins-Air ~ % python -u "/Users/martin/Downloads/assignment7" 文件“/Users/martin/Downloads/assignment7”,第 19 行 print(f'第 {month} 个月后的余额为 $ {balance}。') ^
【问题讨论】:
-
欢迎来到堆栈溢出。请不要将代码作为图像发布。相反,请将您的代码复制/粘贴到您的问题中,并通过编辑器工具栏上的
{}工具对其进行正确格式化。尽可能以文本形式发布结果和错误消息。 -
我的猜测是您在 VSCode 中运行时使用的是旧版本的 Python,它不支持 f 字符串。此功能是在 Python 3.6 中添加的。检查您是否使用比出现错误时更早版本的 Python 运行。如果是这样,升级您的 Python 版本将解决问题。要在不更改 Python 版本的情况下测试此假设,请将代码更改为不使用 f-string 功能,然后查看它是否运行正常。
-
@Carcigenicate - 当然。胖手指移动:)
-
@CryptoFool 谢谢,它定义的 f 字符串不起作用。我刚刚将我的解释器更改为 python 3.8.2,但它仍然无法正常工作。我该如何解决?
标签: python syntax syntax-error