![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python与数据科学基础教程
众所周知,AI与Python是密不可分的。如果缺乏语言基础,或者语言不够简洁、高效、强壮,可能是因为知识不系统。本专栏旨在构建最基础的Python体系,紧贴人工智能方向,不涉及其他方向的专业内容,不涉及异步编程、元编程等高级内容。
Sakura樱_子于
这个作者很懒,什么都没留下…
展开
-
Python入门——简介和安装配置环境
解释器 python解释器是将python语言翻译成机器指令语言的程序,在windows系统当中,就是python.exe。在解释器中存在一个问题,python2与python3 解释器可能不兼容,例如print “hello world” 在python2中可以执行,但在python3中要写成print(“hello world”)。所以不同版本的python语言需要不同版本的解释器。工具...原创 2020-02-26 21:22:29 · 354 阅读 · 0 评论 -
Python入门——变量、输入输出、PEP8、注释
第二部分 变量2. 变量的命名2.1 哪些可以用来做变量名?大写字母、小写字母、数字、下划线、汉字及其组合。严格区分大小写Python_is_第1名 = Truepython_is_第1名 = False2.2 哪些情况不被允许?首字符不允许为数字 变量名中间不能有空格不能与33个Pyhton保留字相同and as assert break class continue defdel elif else except False finally forfrom global if原创 2020-05-10 17:16:46 · 564 阅读 · 0 评论 -
Python入门——基本数据类型
文章目录第一部分 数字类型1.1 数字类型的组成1.1.1 整数——不同进制的转换十进制与其他进制的转换其他进制转十进制1.1.2 浮点数——不确定性1.1.3 复数——a+bj1.2 数字运算操作符(a 操作符 b)加减乘除运算 + - / *取反 -乘方运算 **整数商// 和 模运算%1.3 数字运算操作函数求绝对值 abs()幂次方 pow(x,n)四舍五入 round(...原创 2020-04-30 22:43:29 · 666 阅读 · 0 评论 -
Python入门——组合数据类型
文章目录第一部分 列表 list1.1 列表的表达 []另一种生成方式:list(可迭代对象)range()1.2 列表的性质列表的长度——len(列表)列表的索引——与同为序列类型的字符串完全相同列表的切片——与字符串完全相同1.3 列表的操作符用 list1+lis2 的形式实现列表的拼接用 n * list 或 list * n 实现列表的成倍复制1.4 列表的操作方法1.4.1 增加元素在...原创 2020-05-01 11:40:09 · 729 阅读 · 0 评论 -
Python入门——程序控制结构
文章目录第一部分 条件测试1.1 比较运算 > 、<、>=、<=、==、!=数据结构不为空、变量不为0、None、False,则为True1.2 逻辑运算 与and、或or、非not复合逻辑运算的优先级:非 > 与 > 或1.3 存在运算——元素 in/not in 列表/元组/字典的键或值集合/集合/字符串第二部分 分支结构——if语句第三部分 遍历循环——f...原创 2020-05-01 15:52:34 · 326 阅读 · 0 评论 -
Python入门——函数,面向过程的编程
文章目录1 函数的定义及调用1.1 为什么要用函数1.2 函数的定义及调用1.3 参数传递1.3.1 形参与实参1.3.2 位置参数(关联)1.3.3 关键字参数(形参=实参)位置参数可以与关键字参数混合使用,但是,位置参数必须放在关键字参数前面1.3.4 默认参数让参数变成可选的1.3.5 可变长参数 *args实参打散1.3.6 可变长参数 **kwargs字典实参打散可变长参数的组合使用1....原创 2020-05-01 22:31:27 · 324 阅读 · 0 评论 -
Python入门——类,面向对象的编程
文章目录引子第一部分 类的定义1.1 类的命名1.2 类的属性——类内部声明的变量1.3 类的方法——类内部定义的函数第二部分 创建实例2.1 实例的创建——实例名 = 类名(初始化参数)2.2 访问属性——实例名.属性名2.3 调用方法——实例名.方法名(参数)2.4 修改属性2.4.1 直接修改2.4.2 通过方法修改属性2.4.3 继续拓展2.5 小结第三部分 类的继承——class 子类名...原创 2020-05-02 10:25:05 · 439 阅读 · 0 评论 -
Python入门——文件读写
文章目录第一部分 文件的打开1.1 文件的打开通用格式1.2 文件路径1.3 打开模式1.4 字符编码第二部分 文件的读取2.1 读取整个内容——f.read()2.2 逐行进行读取——f.readline()2.3 读入所有行,以每行为元素形成一个列表——f.readlines()2.4 文本文件迭代读取2.5 二进制文件读取第三部分 文件的写入3.1 向文件写入一个字符串或字节流(二进制)——...原创 2020-05-02 15:06:32 · 337 阅读 · 0 评论 -
Python入门——异常处理
文章目录第一部分 常见异常的产生1.1 除0运算——ZeroDivisionError1.2 找不到可读文件——FileNotFoundError1.3 值错误——ValueError1.4 索引错误——IndexError1.5 类型错误——TypeError1.6 使用一个未被定义的变量——NameError1.7 试图访问字典里不存在的键——KeyError第二部分 异常的处理2.1 try...原创 2020-05-02 16:32:07 · 413 阅读 · 0 评论 -
Python入门——模块简介
文章目录第一部分 广义模块分类1.1 Python 内置1.2 第三方库1.3 自定义文件第二部分 模块的导入2.1 导入整个模块——import 模块名2.2 从模块中导入类或函数——from 模块 import 类名或函数名一次导入多个类或函数2.3 导入模块中所有的类和函数——from 模块 import *第三部分 模块的搜索顺序3.1 内存中已经加载的模块3.2 内置模块——sys.mo...原创 2020-05-02 17:10:56 · 245 阅读 · 0 评论 -
Python进阶——数据类型的底层实现
文章目录第一部分 从奇怪的列表说起1.1 错综复杂的复制1.2 列表的底层实现1.2.1 引用数组1.2.2 新增元素1.2.3 修改元素1.2.4 对列表型元素进行操作1.2.5 对元组型元素进行操作1.2.6 对字典型元素进行操作1.2.7 小结1.3 深拷贝——copy.deepcopy(列表)第二部分 神秘的字典2.1 快速的查找2.2 字典的底层实现2.2.1 字典的创建过程2.2.2 ...原创 2020-05-03 13:33:37 · 311 阅读 · 0 评论 -
Python进阶——条件表达式和解析语法
文章目录第一部分 解析语法1.1 解析语法的基本结构——[expression for value in iterable if conditihon]1.2 解析语法构造列表(也称为列表推导)支持多变量支持循环嵌套1.3 解析语法构造字典(字典推导)1.4 解析语法构造集合(集合推导)1.5 生成器表达式第二部分 条件表达式——expr1 if condition else expr2条件表达式...原创 2020-05-03 14:24:08 · 473 阅读 · 0 评论 -
Python进阶——高阶函数、嵌套函数、闭包
文章目录第一部分 函数对象第二部分 高阶函数第三部分 嵌套函数第四部分 闭包第一部分 函数对象函数是Python中的第一类对象可以把函数赋值给变量对该变量进行调用,可实现原函数的功能def square(x): return x**2print(type(square)) # square 是function类的一个实例pow_2 = square ...原创 2020-05-03 19:26:37 · 294 阅读 · 0 评论 -
Python进阶——生成器、迭代器、装饰器
文章目录第一部分 生成器1.1 生成器表达式1.2 生成器函数——yield第二部分 迭代器2.1 可迭代对象——Iterable2.1.1 列表、元组、字符串、字典、集合、文件、range()2.1.2 生成器2.2 迭代器——Iterator2.2.1 生成器都是迭代器2.2.2 列表、元组、字符串、字典、集合不是迭代器可以通过iter(Iterable)创建迭代器2.2.3 zip enum...原创 2020-05-03 21:34:59 · 510 阅读 · 2 评论 -
Python进阶——time、random、collections、itertools
Python自身提供了比较丰富的生态,拿来即用,可极大的提高开发效率10.1 time库Python处理时间的标准库1、获取现在时间(1)time.localtime() 本地时间(2)time.gmtime() UTC世界统一时间北京时间比时间统一时间UTC早8个小时import timet_local = time.localtime()t_UTC = time.gmti...原创 2020-05-04 11:42:24 · 466 阅读 · 0 评论 -
科学计算库——Numpy基础
文章目录第一部分 为什么要用Numpy1.1 低效的Python for循环1.2 Numpy为什么如此高效1.3 什么时候用Numpy第二部分 Numpy数组的创建2.1 从列表开始创建设置数组的数据类型二维数组2.2 从头创建数组2.2.1 np.zeros 创建值都为0的数组2.2.2 np.ones 创建一个值都为1的数组2.2.3 np.full 创建一个值都为指定数字的数组2.2.4 ...原创 2020-05-04 23:27:03 · 544 阅读 · 0 评论 -
数据分析处理库——Pandas基础
文章目录引子第一部分 对象创建1.1 Pandas Series对象1.1.1 用列表创建1.1.2 用一维numpy数组创建1.1.3 用字典创建1.1.4 data为标量的情况1.2 Pandas DataFrame对象1.2.1 通过Series对象创建1.2.2 通过Series对象字典创建1.2.3 通过字典列表对象创建1.2.4 通过Numpy二维数组创建第二部分 DataFrame性质注意!!!索引和切片等操作,如果用单层[],获取到的是Series对象,是视图,如果用双层[],获取到的是Da原创 2020-05-15 22:24:58 · 427 阅读 · 0 评论 -
数据可视化库——Matplotlib、Seaborn、Pandas
文章目录第一部分 环境配置1.1 要不要plt.show()1.2 设置样式1.3 将图像保存为文件 plt.savefig第二部分 Matplotlib库2.1 折线图 plt.plot绘制多条曲线2.1.1 调整线条和标记点调整线条颜色 color c调整线条风格 linestyle ls调整线宽 linewidth lw调整数据点标记 marker调整标记大小 markersize ms颜色跟风格设置的简写2.1.2 调整坐标轴plt.xlim 设置上下限plt.axis?plt.axis 查看plt原创 2020-05-16 19:10:39 · 1314 阅读 · 0 评论 -
机器学习算法库——scikit-learn基础
文章目录第一部分 数据预处理1.1 下载数据集1.2 数据集的查看1.3 数据清洗(选择特征,处理缺失值等)1.4 标签编码 LabelEncoder1.5 数据集的标准化 StandardScaler1.6 构建训练集和测试集(本文暂不考虑验证集)第二部分 五大基本数据分类算法2.1 k近邻算法2.1.1 基本思想2.1.2 sklearn实现2.1.3 可视化2.2 朴素贝叶斯算法2.2.1 基本思想2.2.2 sklearn实现2.2.3 可视化2.3 决策树算法2.3.1 基本思想2.3.2 skl原创 2020-05-17 13:49:16 · 1492 阅读 · 3 评论 -
提升代码质量——Python之禅与时间复杂度分析
文章目录第一部分 Python之禅第二部分 时间复杂度分析2.1 常见时间复杂度2.2 三集不相交问题2.3 元素唯一性问题2.4 第n个斐波那契数2.5 最大盛水容器2.6 是不是时间复杂度低就一定好?2.7 影响运算速度的因素第一部分 Python之禅import thisThe Zen of Python, by Tim PetersBeautiful is better than ugly.Explicit is better than implicit.Simple is bett原创 2020-05-17 19:06:03 · 226 阅读 · 0 评论