学习python的一些方式:
- 实践入门: 廖雪峰官网
- 经典书籍:
Head_First_Python(中文版)
利用Python进行数据分析
python源码剖析… - 思考与实践
- …
第一部分:python整体介绍
- python是一种解释型高级语言
- 设计理念:一切皆对象
- 语言的动态性
- 函数的引用传参
- 自动垃圾回收机制
- 包罗万象的模块资源
python是一种解释型高级语言
解释型语言与编译型语言(C语言)的区别:
优势:代码量小、抽象程度更高(解放大脑)…
劣势:运行速度慢、维护难、解释器的GIL锁…
设计理念:一切皆对象 (Object)
对象 = 存在(属性) + 变化(方法)
特性:封装、继承、多态
语言的动态性
变量名机制
对象的可变与不可变
函数的引用传参
函数传参全部是引用传参(传入对象的内存地址)
区分全局变量与局部变量
垃圾回收机制
引用计数
包罗万象的模块资源
爬虫:
Requests:请求网页
BeautifulSoup:对网页的html文本进行解析分析
网络编程:
sockets:
数据分析:
numpy: 一个多维数组对象,ndarray
pandas:一个数据框,DataFrame
其他例子:
Scrapy:爬虫
Pillow: 图形库
matplotlib:数据可视化
Pygame:游戏编程
…
- 爬虫:
import requests
from bs4 import BeautifulSoup
- 网络编程:
from socket import *
- 数据分析:
import numpy as np
import pandas as pd
第二部分:python基础
- 基本数据类型
- 逻辑控制结构
- 算术与逻辑运算
- 函数的定义
- 面向对象编程
基本数据类型
3种原子数据类型:int、float、str。分别表示整数、小数、字符串,其实它们均是类,有相应的属性和方法。
3中组合数据类型:list、tuple、dict。分别表示列表、元组、字典。list最为常用,他有非常常用的方法,比如
1、list.count()统计:
2、list.append()添加对象:
3、list.extend()扩展列表:
4、list.pop()删除对象:
5、list.remove()删除匹配项:
6、list.insert()插入对象:
7、list.copy复制列表:
8、list.reverse()反向排序:
9、list.index()获取索引:
10、list.sort()排序:
通过下面命令了解某个类的详细的用法。
help(className)
e.g.
help(str)
help(list)
注:除此之外,想要自定义自己的数据类型,可以通过定义类来实现。
逻辑控制结构
for迭代:
for 变量 in 可迭代对象:
e.g.
for x in range(n):
do someting...
注:可迭代对象:对象中有定义next()方法,常见的列表、元组、字符串均是可迭代对象。range(n)返回一个可迭代对象。
while循环:
while(n <= 30):
do something
n += 1
if-elif-else 条件语句
if(condition 0):
process block 0
elif(condition 1):
process block 1
else:
process block 2
break、continue
break:强行终止本层循环
continue:强行终止本次循环
算术与逻辑运算
算术://:整除 **:乘方 %:取余
逻辑: and or not : 与或非
比较运算: ==、 !=
赋值运算: +=、 *=、 /=、 //=
隶属运算: in、 not in (字符串、列表…)
对象恒等:is、 is not
函数的定义
def logistic(X,Y,alpha=0.1,epsilon=1,numIter=20,method='SGD'):
coding your function
return sth
四种参数:
位置参数:依位置传入,logistic(xData,yData)
默认参数:已有默认值,必须放置在位置参数后面,如epsilon=1,numIter=20,method=‘SGD’
关键字参数:
可变长参数:
面向对象编程
封装:属性与方法的集成。属性可分为公开的和私有的。
class Person:
def __init__(self,high,weight,age):
self.high = high
self.__weight = weight # 私有属性
self.__age = age # 私有属性
def dressUp(self):
need 5 minutes
return 5
继承:从一个父类衍生出一个子类,子类继承了父类全部属性和方法,还可以针对子类自身的特点进行重写。
class Women(Person):
def dressUp(self):
need 50 minutes
return 50
class Man(Person):
def __init__(self,high,weight,