【python常见错误】 不同类型之间的运算&&关键字或模块名命名文件
- TypeError: unsupported operand type(s) for -: ‘list’ and 'int’
# flatten函数:可以将高维数组转化为向量,生成一份新的复制
a = arange([[n + m * 10 for n in range(3)] for m in range(4)])
print(a)
b = a.flatten()
print(b)
运行之后出现如下错误:
很明显可以看到错误原因,就是list和int类型之间的“-”运算错误。
然后改了一下上面的写法就对了(这里我好像没怎么理解,我看里面好像没有‘-’呀,刚刚学python,以后理解了来补充)
# flatten函数:可以将高维数组转化为向量,生成一份新的复制
a = array([[n+m*10 for n in range(3)] for m in range(4)])
print(a)
b = a.flatten()
print(b)
运行结果如下:(前面的a是一个4行3列的二维数组,flatten函数将其转换为向量)
- AttributeError: module ‘pandas’ has no attribute 'Series’
我的代码是:
import pandas as pd
s = pd.Series([1, 2, 3])
print(s)
这个错误刚开始真的有点疑惑,我明明下载了pandas模块,这个模块里面也有Series方法啊,真的疑惑,后来发现是文件名的问题,我的文件命名成 pandas.py 了(如上图的"e:\Python\code\pandas.py"),所以不要用关键字、包名命名文件名,否则导入包和文件的时候,会发生混淆。