函数中的语法错误,但一切似乎都是正确的

数据挖掘 python-3.x
2022-03-06 02:35:57

我自定义定义了一个函数,下面是我的函数,但我收到如下错误

def  saveSlice(img, fname, path):
     img  = np.uint8(img * 255)
     fout = os.path.join(path, f'{fname}.png')
     cv2.imwrite(fout, img)
     print(f'[+] Slice saved: {fout}', end='\r')

我收到如下错误消息

文件“ipython-input-79-e8d731623c8b”,第 3 行 fout = os.path.join(path, f'{fname}.png')

                                                                           ^

SyntaxError:无效的语法

我究竟做错了什么?

1个回答

如果您使用早于 3.6f-strings的 Python,则不可用,并且该代码的语法不正确。在这种情况下,您可以format像这样使用字符串的方法(修改了 2 行):

def  saveSlice(img, fname, path):
     img  = np.uint8(img * 255)
     fout = os.path.join(path, '{}.png'.format(fname))
     cv2.imwrite(fout, img)
     print('[+] Slice saved: {}'.format(fout), end='\r')