python-3.x - 为什么我在第一行出现语法错误?
问题描述
我在我的电脑上安装了 pylint。但是当我在写一些代码时,例如:
def my_logger(original_func):
import logging
logging.basicConfig(filename = f'{original_func.__name__}.log', level = logging.INFO)
def wrapper(*args, **kwargs):
logging.info(f'Ran with {*args} and {**kwargs}.')
return original_func(*args, **kwargs)
return wrapper
Pylint 引发语法错误并在关键字“def”下划线:
invalid syntax(<fstring>, line 1) pylint syntax-error [1,1]
解决方案
*args
并且**kwargs
不是表达式;它们是仅限于某些上下文的语法(例如函数调用、函数声明、数组字面量、多重赋值等)。f 字符串{...}
插值器需要一个表达式。
这有效:
logging.info(f'Ran with {args} and {kwargs}.')
推荐阅读
- python - 链接列表 - 添加新节点不起作用
- python-3.x - 如何将连续编号的数组转换为时间戳
- java - 什么是搜索不断变化的字符的字符串的 BigO 表示法
- php - 将特定字符向右移动
- swiftui - SwiftUI (1.0) 中的导航问题
- typescript - 数据为空还是未定义?
- python - pytest, raise_for_status with Failed: DID NOT RAISE
- php - 使用 PHP 通过 EWS 从 Outlook.com 邮箱中检索电子邮件附件
- c++ - 在 C++ 中的字符串中发布索引的增量
- sql-server - 我开始学习 T-SQL,但在创建外键时遇到问题