我在Python 3中有以下代码
def inputWithDefault(text:str, default):
result = input(f"{" " * int(len(text))}{default}\r{text}")
return default if not(result is type(default)) else result
Python 在语法树生成阶段会这样说
File "main.py", line 2
result = input(f"{" " * int(len(text))}{default}\r{text}")
^
SyntaxError: f-string: expecting '}'
这很难解决,因为错误不清楚并且其推理很难解析,我已经检查过并且
{}
在整个 fstring
声明中匹配。
你可以这样尝试
def inputWithDefault(text: str, default):
result = input(f"{' ' * int(len(text))}{default}\r{text}")
return default if not isinstance(result, type(default)) else result