Python的数据处理能力主要依赖于NumPy,SciPy,Matplotlib,Pandas4个库,其中NumPy提供了矩阵运算的功能,SciPy则在NumPy的基础上添加了许多科学计算的函数库,而这两个库就使Python具有和Matlab一样的数据处理能力了。Matplotlib库提供了绘图,可以实现数据的可视化,pandas是基于NumPy的一种工具,该库提供了高效地操作大型数据集所需的工具。

使用的python科学计算发行版Enthought Canopy

Python用于科学计算的一些常用工具和库
NumPy-数学计算基础库:N维数组、线性代数计算、傅立叶变换、随机数等。
SciPy-数值计算库:线性代数、拟合与优化、插值、数值积分、稀疏矩阵、图像处理、统计等。
SymPy-符号运算
Pandas-数据分析库:数据导入、整理、处理、分析等。
Matplotlib-绘图库:绘制二维图形和图表。
Beautiful soup:爬虫工具
begin(设置路径):

In [1]:import os    #导入os的标准库

In [2]:os.getcwd()#查看现在的工作目录

In [3]:os.chdir(r’E:\python’) #设置工作目录是‘E:\\python’,且此目录必须已存在。

几个简单好用的magic函数:

  %ed%edit编辑一个文件并执行。

  %env显示环境变量。

  %history显示历史记录。

   %pwd显示当前目录。

  %pycatfilename用语法高亮显示一个python文件(不用加.py后缀名)

 %save filename将执行过多代码保存为文件。

  %time statement计算一段代码的执行时间。

好戏正式开始。。。

fundamental part

py脚本文件,由 python.exe 解释,可在控制台下运行。

pyw脚本文件是图形用户接口(Graphical user interface)的源文件,专门用来开发图形界面,由 pythonw.exe 解释运行。


attention:

1、

以“#”号开头的内容为注释,python解释器会忽略该行内容。 

2、Python中是以缩进(indent)来区分程序功能块的,缩进的长度不受限制,但就一个功能块来讲,最好保持一致的缩进量。 

3、如果一行中有多条语句,语句间要以分号(;)分隔。

4、Python中的字符串可以使用单引号(‘)或使用双引号(“)表示;使用三引号(‘’‘或“”“):利用三引号,可以指示一个多行的字符串,可以在三引号中自由的使用单引号和双引号

Python学习笔记(1)——基本概念

假设想要在一个字符串中包含一个单引号(),\’来指示单引号——注意这个反斜杠。现在可以把字符串表示为‘What\’s your name?‘

可以用转义符\\来指示反斜杠本身
5、在一个字符串中,行末的单独一个反斜杠表示字符串在下一行继续,而不是开始一个新的行

"Thisis the first sentence.\
This is the second sentence." 
等价于:"This is the first sentence. This is the second sentence." 

6、如果想要指示某些不需要如转义符那样的特别处理的字符串,那么需要指定一个自然字符串。自然字符串通过给字符串加上前缀rR来指定。例如r"Newlines are indicated by \n“

标识符的命名-类保留(下划线的使用)

        普通标识符为小写字母表示,类变量使用大写开头的字符串。以下划线开头的标识符是有特殊意义的。

_*:私有类名称,不能用'from module import *'导入 
__*__:系统定义的名字,python里特殊方法专用的标识
__*:类的私有变量或方法。

**

返回xy次幂

3 ** 4得到81(即3 * 3 * 3 * 3

/

x除以y

4/3得到1(整数的除法得到整数结果)。4.0/34/3.0得到1.3333333333333333

//

取整除

返回商的整数部分

4 // 3.0得到1.0

%

取模

返回除法的余数

8%3得到2-25.5%2.25得到1.5

==

等于

比较对象是否相等

x = 2; y = 2; x == y返回Truex = 'str'; y = 'stR'; x == y返回Falsex = 'str'; y = 'str'; x == y返回True

()空元组

[]空列表

{}空字典

变量
多变量赋值,Variable1,variable2,...=Value1,Value2,...
a,b,c=1,2,3
a=[1,2,3];b,c,d=a
a=(1,2,3);b,c,d=a
多变量赋值也可用于变量交换
a,b=b,a

特点:

变量如对象一样不需要声明。
变量在第一次赋值时创建。
变量在表达式中使用将被替换为他们的值。
变量在表达式中使用以前必须已经赋值。

字符串
-字符串在python被看成是单个字符的序列,具有序列对象的特殊功能,字符串是固定的,不可变的。
-可在字符串中使用单引号和双引号,注意要搭配。如‘boy’,”girl”等。
-字符串内部的一个反斜杠“\”可允许把字符串放于多行
-也可以使用三个’或”使字符串跨行。
-使用“*”号重复字符串,如:'hello'*3èhellohellohello  

+——字符串合并
*——字符串重复

>>>len('abc')

3

>>>'abc'+'def'

'abcdef'

>>>'abc' 'def'

'abcdef'

>>>'hello'*4

'hellohellohellohello

字符串索引和分片

索引从0开始,可以取负值,表示从末尾提取,最后一个是-1,前一个是-2,依次类推

Python学习笔记(1)——基本概念

o分片:从字符串中分离提取了一部分内容(子字符串);可以用于提取部分数据,分离出前、后缀等场合。
o当使用一对以冒号分隔的偏移索引字符串这样的序列对象时,Python就返回一个新的对象,其中包含了以这对偏移所标识的连续的内容。
o左边的偏移被取作是下边界(包含下边界在内),而右边的偏移被认为是上边界(不包括上边界在内)。
o如果被省略上下边界的默认值分别对应为0和分片对象的长度
Python学习笔记(1)——基本概念
分片的扩展形式

o完整形式为:X[I:J:K],这表示:索引(获取)对象X中元素,从偏移为I直到J-1,每隔K元素索引一次
oK默认为1,这就是通常在切片中从左至右提取每个元素的原因
o步进K为负数表示将会从右至左进行而不是从左至右

字符串转化如果用户从文件或用户界面得到一个作为字符串的数字,怎么把这个字符串变为数字型呢?
Python学习笔记(1)——基本概念
o内置的eval函数,用于运行一个包含了Python表达式代码的字符串(将字符串str当成有效的表达式来求值并返回计算结果。)

>>>eval('12')

12

>>>eval('12 + 3')

15

利用索引和分片修改字符串

格式化字符串:
1、在%操作符左侧放置一个需要进行格式化的字符串,这个字符串带有一个或多个嵌入的转换目标,都以%开头,如%d%f
2、在%操作符右侧放置一个对象(或多个,在括号内),这些对象会被插入到左侧格式化字符串的转换目标的位置上
Python学习笔记(1)——基本概念
转义符

Python学习笔记(1)——基本概念
学习资料来自中国科学院大学张老师讲授的《Python科学计算与数据处理》ppt










相关文章: