3小时Python入门

一,编程环境

推荐使用jupyter notebook

1,可以下载安装Anaconda 使用 jupyter notebook

2,也可以注册聚宽账号(https://www.joinquant.net/),    

在"我的策略"-->"投资研究"中可以直接使用jupyter notebook

在jupyter notebook 中使用快键键 Ctrl+Enter 运行单元格cell中的代码。

可以在网易云课堂找到本教程的视频课程《3小时Python入门》。

3小时Python入门

一,输入输出

 

输入:input(输入的都是字符串) 

输出:print

3小时Python入门


 

二,导入模块

 

import ... 

或 from ... import ...

或 import ... as ...

3小时Python入门


 

三,基础语法

 

1,标识符

 

标识符由字母、数字、下划线组成,区分大小写,不能以数字开头。

以下划线开头的标识符有特殊含义。以单下划线开头的(_foo)的代表不能直接访问的类属性,以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表Python里特殊方法专用的标识,如__init__() 代表类的构造函数。

 

2,缩进

 

Python的代码块不使用大括号来控制类、函数、以及其他逻辑判断,而是使用缩进来写实现代码分组。通常用四个空格来进行缩进。

 

3,注释

 

python中单行注释采用 # 开头。

多行注释使用三个单引号(''')或三个双引号(""")。

 

 

4,一条语句分多行显示

 

Python语句中一般以新行作为为语句的结束符。

但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

 

3小时Python入门

 

语句中包括[],{}或()括号就不需要使用多行连接符。

 

3小时Python入门

 

5,同一行显示多条语句

 

Python可以在同一行中使用多条语句,语句之间使用分号分割。

 


 

四,数据类型

 

python内建的数据类型有列表,元组,字符串,字典,集合等。此外常用的还有numpy中的array,以及pandas中的dataframe和series。

 

1,有序数据类型: 

 

List(列表),是有序集合,没有固定大小,可以通过对偏移量以及其他方法修改列表大小。列表的基本形式如:[1,2,3,4] 

Tuple(元组),是有序集合,是不可变的,可以进行组合和复制运算后会生成一个新的元组。元组的基本形式比如:(1,3,6,10) 

String(字符串),也是有序集合,字符串的基本形式比如:’hello'。

 

2,无序数据类型:

 

Set(集合),是一个无序不重复元素的集。

基本功能包括关系运算和消除重复元素。集合的基本形式如:

{'apple','orange','banana'}

Dictionary(字典)是无序的键:值对 (key:value 对)的集合。

键必须是互不相同的(在同一个字典之内)。

字典的基本形式如:{'jack': 4098, 'sape': 4139}

 


 

五,列表

 

1,建立列表

 

3小时Python入门

2,访问列表

 

可以使用下标访问和切片访问

 

3小时Python入门

 

3,修改列表

 

3小时Python入门

 

4,列表常用函数

 

3小时Python入门

 

5,列表常用方法

 

3小时Python入门

 


 

六,字典

 

1,创建字典

 

3小时Python入门

 

2,常用字典操作方法

 

3小时Python入门

 

 


 

七,元组

 

1,创建元组

3小时Python入门

 

2,修改元组

 

3小时Python入门

 


 

八,字符串

 

1,创建字符串

 

可以用单引号,双引号,或者三重引号创建字符串。

(\n表示换行符,\t表示制表符)

 

 

3小时Python入门

 

2,字符串基本操作

 

3小时Python入门

3小时Python入门

3,格式化字符串

 

3小时Python入门

 


 

九,条件语句

 

1,多分支结构

 

python中不支持switch语句,只能用elif来实现多分支选择结构。此外,还可以巧妙地通过字典数据结构实现多分支选择结构。

3小时Python入门

2,and 和 or

 

python中的与、或、非分别用关键字 and,or,not 表示。python做逻辑运算时把空的列表、元组、集合等当做False。对or而言,Python会由左到右求算操作对象,然后返回第一个为真的操作对象。Python会在其找到的第一个真值操作数的地方停止,通常叫短路计算。and 会停在第一个为假的对象上。

 

3小时Python入门

 


 

十,循环语句

 

 

Python提供了for循环和while循环(在Python中没有do...while循环)。

for循环一般比while计数器循环运行得更快。

break语句,在语句块执行过程中终止循环,并且跳出整个循环。

continue语句,在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。

pass语句,是空语句,是为了保持程序结构的完整性。不做任何事情,一般用做占位语句。俗称代码桩。

3小时Python入门

 


 

十一,函数

 

1,定义函数

 

使用 def关键字定义函数,用return返回函数值,

若没有return,返回值为None。

 

3小时Python入门

2,默认参数

 

默认参数放在普通参数后面

 

3小时Python入门

 

3,可变参数

 

可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。可以用 *k 的方式定义可变参数。可变参数传入函数后自动组装为一个tuple。

 

 

3小时Python入门

3小时Python入门

4,关键字参数

 

关键字参数允许你传入 0 个或任意个含参数名的参数,

这些关键字参数在函数内部自动组装为一个 dict。

3小时Python入门

5,混合参数

 

3小时Python入门

 


 

十二,lamda 匿名函数

 

lambda只是一个表达式,适合定义较为简单的函数。

lambda函数拥有自己的名字空间,且不能访问自有参数列表之外或全局名字空间里的参数。

 

lamda函数定义语法是: 

fun = lamda 参数序列: 返回值表达式

 

一般来说通过使用lamda函数可以节约程序开支并加快运行速度。

 

3小时Python入门

 


 

十三,迭代器

 

迭代器在python中是以C语言的速度运行的,常用的迭代器如下。

 

3小时Python入门

3小时Python入门

 

 

3小时Python入门


 

十四,Python 推导式

 

Python中的推导式是Python语言所有语法规则中最大的一个彩蛋,简直是一个超级语法糖。淋漓尽致地体现了Python语言 simple,readable 和 powerful 的特点。一旦掌握则爱不释手,欲罢不能,永生难忘。Python推导式可以生成列表,集合和字典。

 

1,列表推导式

3小时Python入门

3小时Python入门

 

 

2,字典推导式

 

3小时Python入门

 

3,集合推导式

 

3小时Python入门

 


 

十五,Python类和对象

 

在Python中,万物皆为对象。对象由类创建而来,所有的类都是object基类的子类。

 

1,类和对象基本概念

 

类: class, 抽象数据结构,数据和算法的封装。如:定义一个类,dog。
对象: object,类的实例。如:dog类的一个实例,点点 dot。
属性:properties,和对象关联的数据部分。如:weight 体重,breed 品种。
方法:methods,和对象关联的算法部分。如:run(),  eat(), bark()。

 

2,创建类和对象

3小时Python入门

 

3小时Python入门

 

3,获取对象信息

3小时Python入门

3小时Python入门