Spyder 中的无效语法

Posted

技术标签:

【中文标题】Spyder 中的无效语法【英文标题】:Invalid syntax in Spyder 【发布时间】:2021-06-19 08:53:55 【问题描述】:

我正在尝试根据名称中的某些字符串(例如“日期”)制作列名列表。

date_cols = [col in df.columns if 'date' in col]

为什么这个命令在 spyder 上给了我无效的语法?

【问题讨论】:

【参考方案1】:

你需要的是:

date_cols = [col for col in df.columns if 'date' in col]

语法是:

[*expression* for *target* in *iterable* if *conditional*]

其中 expression 是可以使用一个或多个目标名称或任何其他值的任何有效表达式; target 是一个或多个以列分隔的名称; iterable 是任何可迭代的,包括 list/set/dictionary/dataframe 和许多其他; conditional 是基于一个或多个目标名称的 True/False 表达式

【讨论】:

【参考方案2】:

您可以使用for..in 循环,条件如下。

date_cols = [col for col in df.columns if 'date' in col]

【讨论】:

以上是关于Spyder 中的无效语法的主要内容,如果未能解决你的问题,请参考以下文章

spyder IDE 上的无效语法 (pyflakes E)

我无法在 pycharm 和 spyder 上运行 streamlit。我在窗口上运行最新的 python 版本。当我尝试代码时,它说语法无效

为什么Spyder 2.2.5在非py脚本上没有使用语法颜色方案?

Spyder:如何导入/导出语法着色方案?

如何改变spyder高亮匹配的颜色

注释中的python无效语法