1. python基础
1.3 python入门
1.3.2 查看数据类型
使用type()
1 |
|
1.3.4 列表基本用法
如下
1 |
|
元素访问 切片
从0开始
“:”代表切片
:
前代表开始元素,后代表结束元素
前后都可用正负,正表示第几个,负表示相对于n
的距离。故-1
代表n-1
,代表最后一个元素。
例:
1 |
|
若:
前后留空,则
前空代表从头开始
后空代表遍历到结尾
若超出范围,返回空列表。
1 |
|
1.3.5 字典
以key-value
形式存储
访问时用中括号,下标使用key
部分值
例如
1 |
|
这里的2
就代表了me
的关键词为2
的项目,它的值是160
。
需要注意的是,如果使用不存在的键进行访问,会引发 KeyError 异常。为了避免这种情况,可以使用字典的 get() 方法,它允许提供默认值,当键不存在时返回该默认值。例如:
1 |
|
在上面的例子中,我们使用 get() 方法来获取键 “age” 对应的值,如果键不存在,则返回默认值 0。这样可以避免出现 KeyError 异常。
默认值若不指定,则为None
1 |
|
1.3.6 bool
以下是很有意思的一段代码
1 |
|
代码中,首先定义了一个bool
类型的flag。
对其
取非输出
,输出是False
,没毛病。对其再进行
取反输出
,这时候输出是-1
对其再进行
取反输出
,这时候输出是0
,
可见,对布尔类型只能使用and
,or
,not
操作
使用取反
操作会出现类型转换,使得布尔类型
变成整数类型
,从而输出0000 0000
的按位取反
结果,是FFFF FFFF
,在补码中表示-1
,与输出吻合。
再进行取反,结果就是0000 0000
,输出是0。
同样,对True
类型进行按位取反,表示对0000 0001
按位取反,结果是FFFF FFFE
,补码表示-2
。对True
进行取反取反输出
,结果就是0000 0001
,输出整型
的1
。
1 |
|
1.3.8 for语句
记得后面有个冒号,循环体内要缩进
1 |
|
1.3.9 函数
1 |
|
这里第一句使用了默认参数,输出Hello World !
第二句传入参数,输出Hello CAT !
1 |
|
1.4.2 Class类
1 |
|
- 构造函数
__init__(self,parameters...)
这个函数在构造类的时候执行一次,根据参数和构造函数来 赋初值
- 方法s: 可以给类里面不同的
方法
定义不同的功能。类似于类里面的函数。注意第一个参数必须是显式的self
在 Python 类的方法中,self 是一个特殊的参数,用于引用当前对象实例。它是约定俗成的命名,但实际上可以使用任何名称。如果在类的方法中不指定 self 参数,会导致以下问题:
1. 访问不到对象的属性和方法:在类的方法中,如果没有指定 self 参数,将无法访问到对象的属性和其他方法。这是因为没有指定 self 参数,无法确定当前对象实例的引用。
2. 无法修改对象的属性:没有 self 参数,无法通过引用对象实例来修改对象的属性。对象的属性只能通过类方法或实例方法中的 self 参数进行修改。
3. 无法调用其他方法:在类的方法中,如果没有指定 self 参数,无法调用其他方法。因为没有指定 self 参数,无法确定调用哪个对象实例的方法。
1 |
|
1.5 Numpy
1.5.2 NumPy数组
使用numpy.array(...)
创建NP数组,
创建出来的数组类型是numpy.ndarray
1 |
|
1.5.3 NumPy element-wise
前提:X和Y的维数必须一致,才可进行算术运算。
element-wise
是按元素
进行操作,即X的某一元素
与Y的对应元素
进行算术运算
。
1 |
|
1.5.4 NumPy的N维数组
注意,多维数组是对某一元素进行扩展。即首先是个Array,最外层应该由中括号包起来,然后内层根据需要扩展维数。
用A.shape
即A的shape元组
来查看维数,
A.dtype
即A的numpy.dtype[int32]
[1]来查看数据类型
1 |
|
对于多维数组,也可进行element-wise
运算。
1 |
|
1.5.5 广播
即将标量通过扩展,形成和向量同维度的,所有元素均为标量值的
向量,然后对这两个向量进行element-wise
算术运算。
注意,一般是中括号内部对齐。即A的中括号内第一个元素
,与B的中括号第一个元素
进行广播相乘。
1 |
|
1.5.6 访问元素
A=np.array([ [1,2],[3,4],[5,6]])
- 按照中括号内进行索引,从0开始编号。
A[0]
A[0][3]
- 使用
for语句
1
2
3
4
5
6
7
8
for row in A:
print(row)
## [1 2]
## [3 4]
## [5 6]
- 使用数组法
print(A[0,1])
## 2
由访问元素,可以批量进行某些运算。
1 |
|
1 |
|
1.6 Matplotlib 图像绘制
1 |
|
1.6.3 显示图像
1 |
|
numpy.dtype[int32]
是 NumPy 库中的数据类型对象,表示一个具体的数据类型。在这种情况下,int32 表示一个 32 位整数的数据类型。 ↩