在编辑器窗口中键入以下代码时,只会显示一些可用的自动填充项目。也就是说它应该显示.loc作为选项,但不是。
import pandas as pd
df = pd.read_csv('somecsvfile.csv')
df.
code completion in editor window
在PyCharm中使用具有相同代码的控制台时,将显示完整列表。 (见附图)
code completion with the full list
我已经使缓存无效并重新启动。此外,似乎另一个建议是打开Python调试器 - >收集运行时类型信息以获取代码洞察力。我也是这样做的,在编辑器窗口中仍然没有。
让我感到困惑的是,代码完成在控制台中运行,但不在编辑器中。
非常感谢任何帮助!
答案 0 :(得分:3)
当你在控制台中运行它时,它知道y.y
的类型,因为它实际上就在那里。它甚至可以运行mylist = [['F','G','C'], ['S',3,7], ['C',3,'D']]
rslist = [[y for y in x if not isinstance(y, int)] for x in mylist ]
print (rslist)
来确切知道可用的名称。在编辑器中,它不运行代码,所以它必须通过检查df
来猜测类型,这更难(通常甚至不可能),因为Python是如此动态。
答案 1 :(得分:0)
我曾经遇到同样的问题。这只发生在Linux上。请注意,这可能并且实际上是Windows中的标准行为,因此可以完成。不确定是否使用静态分析或类似方法完成。
我已经能够修复它,我认为它不仅在运行/调试配置中定义了正确的解释器,而且在项目的默认值中也是如此(检查文件 - >设置 - &gt ;项目翻译和文件 - >默认设置 - >项目翻译)
我现在已经转移到下一个问题,即自动完成适用于Python控制台和文件编辑,但奇怪的是,它不适用于调试!...