Python基础(入门)
- 一、深度学习框架
- 二、GitHub
- 三、pyhton
- 1、字符型
- 2、布尔值
- 3、容器
- 列表
- 集合
- 字典
- 元组
- 4、函数
- 5、类
- 四、Numpy基础
- 1、数组
- 2、数组索引
- 3、数学计算
- 五、Matplotlib
- 相关参考
一、深度学习框架
二、GitHub
如何使用GitHub?
三、pyhton
1、字符型
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25'''字符型''' # 字符串是以''或者""括起来的任意文本 s = 'abc' print(s) print(len(s)) # 表示是一个转义字符 print('I'm "OK"') a = 'hello' b = 'world' c = a+' like '+b print(c) d = 'a:{},b:{}'.format(23,24) print(d) # 字符串其他的实用方法 s = 'hello' print(s.capitalize()) # 字符串首字母变成大写 print(s.upper()) # 字符串全部变成大写 print(s.rjust(7)) print(s.center(7)) print(s.replace('e','a')) # 将字符串中的e替换成a print(' world '.strip()) # 移除字符串前面和后面的空格
字符串的其他方法
2、布尔值
1
2
3
4
5
6
7
8
9'''布尔值''' t = True f = False print(type(t)) print(t and f) # 与 print(t or f) # 或 print(t != f) # 非
3、容器
python中有几种容器的类型,列表,字典,集合,元组。
列表
列表是python中常见的容器,可以看做一个序列,序列中的每个元素都可以修改,且可以是不同的数据类型,同时序列的长度也能够进行修改。
1
2
3
4
5
6
7
8
9
10
11# 1、列表 xs = [3,1,2] # 创建一个序列 print(xs,xs[2]) # 打印出完整序列和序列中的第3个元素 print(xs[-1]) # 打印出序列的最后一个元素 xs[2] = 'foo' # 将序列中的第三个元素进行重新赋值 print(xs) xs.append('bar') # 在列表的最后加一个新的元素 print(xs) x = xs.pop() # 移除列表的最后一个元素 ,同时将这个元素返回到一个变量中 print(x,xs)
列表的其他方法
采用不同的方式访问列表元素。
(1)索引
1
2
3
4
5
6
7
8
9
10# 用索引的方式访问列表 L = [ ['Apple','Google','Microsoft'], ['Java','Pyhton','Riby','PHP'], ['Adam','Bart','Lisa'] ] print(L[0][0]) print(L[1][1]) print(L[2][2])
(2)切片
1
2
3
4
5
6
7
8
9
10
11
12# 用切片的方式访问列表 nums = [0,1,2,3,4] print(nums) print(nums[2:4]) # 得到一个切片,下标从2到4,但是不包括4 print(nums[2:]) # 得到一个切片,下标从2到列表结束 print(nums[:2]) # 得到一个切片,下标从开始到2,不包括2 print(nums[:]) # 得到整个列表的元素 print(nums[:-1]) # 得到一个切片,下标从开始到最后一个元素,但是不包括最后一个元素 print(nums[:2]+nums[3:]) # 从列表中取出[0,1,3,4] nums[2:4] = [8,9] # 将列表中下标从2到4(不包括4)的切片替换成新的元素 print(nums)
(3)循环
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22# 用循环的方式访问列表 animals = ['cat','dog','monkey'] for animal in animals: print(animal) # 如果想要读取每个元素的下标,通过调用内置函数enumerate来实现 animals = ['cat','dog','monkey'] for idx,animal in enumerate(animals): print('#{}:{}'.format(idx+1,animal)) # 如果需要改变列表中元素的值,可以通过循环遍历去访问每一个元素,然后进行修改 nums = [0,1,2,3,4] squares = [] for x in nums: squares.append(x**2) print(squares) # 采用高级的列表循环方式,避免创建一个空列表 nums = [0,1,2,3,4] squares = [x**2 for x in nums] print(squares)
小练习
1
2
3
4
5
6# 小练习---求1+2+...+100的结果 total = 0 for i in range(101): total += i print(total)
集合
集合里面的元素没有顺序关系,同时里面也没有重复的元素。
1
2
3
4
5
6
7
8
9
10
11
12# 2、集合 animals = {'cat','dog'} print('cat' in animals) # 验证该元素是否在集合中 print('fish' in animals) animals.add('fish') # 在集合里面添加元素 print('fish' in animals) print(len(animals)) # 打印出集合的元素的个数 animals.add('cat') print(len(animals)) animals.remove('cat') # 从集合里面移除某个元素 print(len(animals))
集合的其他方法
字典
字典里面存的都是数据对,这些数据都是以(key,value)的形式存在,且存在映射关系了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16# 3、字典 d = {'cat':'cute','dog':'furry'} print(d['cat']) print('cat' in d) d['fish'] = 'wet' print(d['fish']) print(d.get('monkey','N/A')) # 如果元素在字典的key中,返回其对应的值,否则返回get中的值 print(d.get('fish','N/A')) del d['fish'] # 从字典中移除某个元素 print(d.get('fish','N/A')) # fish被移除之后,不能显示出wet print(d['pig'])
元组
一个元组和列表类似,但是元组是无法改变的。同时一个最大的不同就是元组可以作为字典中的key,而列表不可以。
1
2
3
4
5
6
7
8# 4、元组 d = {(x,x+1): x for x in range(10)} # 使用元组构造一个字典 t = (5,6) # 创建一个元组 print(type(t)) # 打印出元组的类型 print(d[t]) # 打印出字典中对应于(5,6)的元素 print(d[(1,2)]) # 打印出字典中对应于(1,2)的元素 print(d) # 打印出整个字典
元组的其他方法
4、函数
函数通过def来定义,将一些重复使用的操作封装在一起,每次不需要重复写相同的代码,只需要调用函数就可以。
1
2
3
4
5
6
7
8
9
10
11
12'''函数''' def sign(x): if x > 0: return 'positive' elif x < 0: return 'negative' else: return 'zero' for x in [-1,0,1]: print(sign(x))
函数的其他信息
小练习
1
2
3
4
5
6
7
8
9
10# 小练习---写一个函数,传入x,返回他的绝对值 def abs_fun(x): if x >= 0: return x else: return -x print(abs_fun(-3)) print(abs_fun(2))
5、类
类和实例是面向对象中的重要的概念,必须牢记类是抽象的模板,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33'''类''' class Student(object): def __init__(self,name,score): self.name = name self.score = score def print_score(self): print('{}:{}'.format(self.name,self.score)) # 给这个类增加一个函数(Method),使得这个函数能够输出学生的等级 def get_grade(self): ''' 90分以上是A,60-90分是B,60分以下是C :return: ''' if self.score >= 90: return 'A' elif self.score >=60: return 'B' else: return 'C' a = Student('mike', 99) b = Student('lisa', 80) a.print_score() b.print_score() a_grade = a.get_grade() print(a_grade) b_grade = b.get_grade() print(b_grade)
类的其他信息
四、Numpy基础
1、数组
数组就是一个任意维度的矩阵,数组的维度就是矩阵的秩,数组内部的数据类型和python的数据类型是一致的。
NumPy中的维度(dimension)、轴(axis)、秩(rank)的含义
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16'''数组''' import numpy as np a = np.array([1,2,3]) # 创建一个一维数组 print(type(a)) # 打印出元素类型 print(a.dtype) print(a.shape) # 打印出元素的维度 print(a[0],a[1],a[2]) # 访问数组中元素 a[0] = 5 # 改变元素中某个位置的值 print(a) b = np.array([[1,2,3],[4,5,6]]) # 创建一个二维数组 print(b.shape) # 打印出数组的维度 print(b[0,0],b[0,1],b[1,0]) # 访问其中的元素
2、数组索引
Numpy也支持多种类型的数据索引,比如切片,整数值索引和布尔值索引。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16'''数组索引''' import numpy as np a = np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]]) print(a) b = a[:2,1:3] # 切片索引 print(b) row_r1 = a[1,:] # 切片索引 print(row_r1) print(a[0,0],a[1,1]) # 整数索引 bool_idx = a > 6 print(bool_idx) print(a[bool_idx])
3、数学计算
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23'''数学计算''' import numpy as np x = np.array([[1,2],[3,4]],dtype=np.float64) y = np.array([[5,6],[7,8]],dtype=np.float64) print(x) print(y) print(x+y) print(x*y) print(x/y) print(np.dot(x,y)) # 矩阵乘法 print('*'*50) x = np.array([[1,2],[3,4]]) print(x) print(np.sum(x)) print(np.sum(x,axis=0)) # 对行求和 print(np.sum(x,axis=1)) # 对列求和
其他的numpy函数
五、Matplotlib
1
2
3
4
5
6
7
8
9
10import numpy as np import matplotlib.pyplot as plt x = np.arange(0,8,0.1) y = np.sin(x) plt.plot(x,y) plt.show()
相关参考
- 李沐动手学深度-花书
- 课程材料
- 互动论坛
最后
以上就是坚强黄蜂最近收集整理的关于Python基础(入门)一、深度学习框架二、GitHub三、pyhton四、Numpy基础五、Matplotlib相关参考的全部内容,更多相关Python基础(入门)一、深度学习框架二、GitHub三、pyhton四、Numpy基础五、Matplotlib相关参考内容请搜索靠谱客的其他文章。
发表评论 取消回复