通知:这篇文章主要简单介绍Python的基本数据结构、容器、列表、字典、集合、元组、函数和类等知识点
Python Numpy学习教程
Author: Justin Johnson
Interpreter:Amusi
Date: 2018-03-24
Reference:
[1]:http://cs231n.github.io/python-numpy-tutorial/
[2]:https://github.com/kuleshov/cs228-material/blob/master/tutorials/python/cs228-python-tutorial.ipynb
注:Amusi是一名Python初学者,本教程是对CS231n课程中的python-numpy-tutorial进行翻译、注释并做部分修改攥写而来的。若文章存在翻译错误或者语法问题,还请及时指出。
Python Numpy学习教程目录
Python
基本数据结构
容器
列表
字典
集合
元组
函数
类
Numpy
数组
数组索引
数据类型
数组数学(Array math)
广播
SciPy
图像处理
MATLAB文件
点之间的距离
Matplotlib
绘制
子图
图像
Python Numpy教程将分四篇内容来介绍:
Python篇
Numpy篇
SciPy篇
Matplotlib篇
本文只介绍(一)Python篇的内容,其它三篇会陆续更新。
Python
Python是一种高级动态类型的多参数编程语言。Python代码经常被认为和伪代码(pseudocode)一样,因为它允许你在非常少的几行代码中表达非常强大的想法,同时可读性很高。举个例子,下面是Python中经典的快速排序算法的实现:
1# quicksort
2def quicksort(arr):
3 if len(arr) <=1:
4 return arr
5 pivot = arr[len(arr) // 2]
6 left = [x for x in arr if x < pivot]
7 middle = [x for x in arr if x == pivot]
8 right = [x for x in arr if x > pivot]
9 return quicksort(left) + middle + quicksort(right)
10
11print(quicksort([3,6,8,10,1,2,1]))
12# output: [1, 1, 2, 3, 6, 8, 10]
Python版本
目前有两种不同的Python支持版本,2.7和3.5(截至2018-02-07,还有3.6)。 令人有些困惑的是,Python3.5引入许多向后不兼容的语言变化,因此用2.7编写的代码可能不能在3.5下工作,反之亦然。针对这个原因和趋势(官方通知Python2.7版本将在2020停止维护),本教程所有代码都将基于Python3.5编写。
你可以通过在命令行运行python --version来检查你的Python版本。
1python --version
基本数据类型
像大多数语言一样,Python有许多基本类型,包括整数,浮点数,布尔型和字符串。这些数据类型的用法与其他编程语言相似。
数值(Numbers)
整数(Integers)和浮点数(floats)按照您从其他语言期望的方式工作:
1# 基本数据类型
2x = 3
3print(type(x)) # 打印 "<class 'int'>"
4print(x) # 打印 "3"
5print(x + 1) # 加法: 打印 "4"
6print(x - 1) # 减法: 打印 "2"
7print(x * 2) # 乘法: 打印 "6"
8print(x ** 2) # 取幂: 打印 "9"