我正在尝试理解以下代码行的直觉。
我知道它正在删除数据帧中列标题的双引号,尽管任何人都可以帮助我了解它是如何做到的?
df.columns = [col[1:-1] for col in df.columns]
谢谢
df.columns = ...
是将右侧列表分配给各列的行。
然后右侧是列表理解,这意味着可以像for循环一样理解。
然后,在python中,字符串是字符数组。 for col in columns
表示您遍历列列表中的每个字符串。每个col
是一个数组。如果该字符串带有引号,则它看起来像"xxxx"
。因此,数组的第一个和最后一个字符是引号。
col[1:-1]
是将数组从第二个元素切成最后一个元素的方式。
因此,当您将所有这些内容并排放置时,最终会删除引号。