1,下载并安装开发环境-http://www.python.org/download
2,cmd->> python -v 测试python是否安装
3,文件扩展名:.py (python 控制台 与 模块), .pyw (python GUI程序)
4,python注释以 #
5,python所能表示的数据大小只受限于机器内存,而非固定数量的字节数
6,python使用的是Unicode编码
7,python使用[]来表示字符串序列中的某一项 如 'hello'[0] 结果:'h'
8,python以0为索引开始
9,python 数据转换可以使用 int() str() 如果转换失败会报异常
10,python 在类型转换的时候 允许使用头尾有空格 如:int(' 45 '):45 而str()是不会清除空格
对象引用
11,python 是动态类型,在任何时候变量都可以引用一个不同类型 a=1 a="1"
12,可以使用 type(var) 来获取变量中存储的数据类型
组合数据类型
13,python中的组合类型:元组与列表(可以用来存储任意类型的数据,【元组是固定的,创建之后就不能改变】,【列表是可变的,可以插入移除数据项】)
14,元组使用(,)创建,如果元组中只有一个元素,也要在其后加上逗号,
>>> a='1','2',3 >>> a ('1', '2', 3)
可以使用[]来访问元组数据,空元组可以使用()创建
>>> a[0] '1' >>> a[1] '2' >>> a[2] 3
15,列表可以使用[]创建,空列表可以使用[]创建
>>> b=[1,2,3,4,5] >>> b [1, 2, 3, 4, 5] >>> b[0] 1
16,实质上元组和列表并不存储数据项,而是存放对象的引用
17,len()函数可以获取数据项的长度,(字符串,元组,列表等),如果传入不能用len()使用的数据项,将抛出异常
18,append()函数的使用
>>> b.append(6) >>> b [1, 2, 3, 4, 5, 6]
另一种使用append的方式,类似的方法有insert(),remove()
>>> list.append(b,7) >>> b [1, 2, 3, 4, 5, 6, 7]
逻辑操作符
身份操作符
19, is 操作符 ,is 只是对对象所在的内存进行比较,相同的地址存储的是相同的对象,通常 is 用于与None的比较,None表示“未知的”,"不存在的"
is 的反向操作符,is not : a is not None,b is None返回的是Bool类型
is操作符的作用是查看两个对象引用是否指向相同的对象,或查看某个对象是不是None
>>> a=1 >>> b="1" >>> a is b False
比较操作符
20,>,<,<=,>=,!=,==,字符串和数字之间无法进行比较,True==1,False==0
>>> c=1
>>> d=1
>>> c is d
True
>>> c==d
True
>>> a=(1,2,3,4)
>>> b=(1,2,3,4)
>>> a is b
False
>>> a==b
True
>>> a=""
>>> b=""
>>> a is b
True
>>> a==b
True
>>> a=True
>>> b=True
>>> a is b
True
>>> a==b
True
>>> False ==0
True
>>> True==1
True
成员操作符
21,in操作符,用于元组,列表,字符串
(对于列表和元组,in使用的是线性搜索,对于数万个数据项时会比较慢)
(对于字典和集合,in操作是非常快的)
>>> a=["1"] >>> 1 in a False >>> "1" in a True
>>> a="hello world" >>> "hello" in a True >>> "ho" in a False
>>> a=[0,1] >>> True in a True >>> False in a True
逻辑运算符
22,and or not,
如果是两个数字使用and,如果两个数都!=0,取最后值,如果两个数中有一个为0,那么取另一个数,如果有一个数为0,那么返回0
如果是两个数字使用or, 如果两个数都!=0 , 取第一个值, 如果两个数中有一个为0,那么取另一个数,如果两个数都是0,那么返回0
如果一个数为0,那么not 后为 1,如果一个数不为0,那么not后为0
流程控制
23,if语句--每条语句后都要使用: 并且缩进来控制流程
>>> if a>0: print(a) elif a<10: print(a) elif a>=10: print(a) else: print(a) 1
24,while语句
>>> while a>0: print(a) a=a-1 10 9 8 7 6 5 4 3 2 1
25,for....in...
>>> a=["1","2","3"] >>> for item in a: print(item) 1 2 3
异常处理
>>> s="ABC" >>> try: i=int(s) print(i) except ValueError as err: print(err) invalid literal for int() with base 10: 'ABC'
try: i=int(s) print(i) except ValueError as err: a=1
算数运算符
26,+-*/,+=,-=,*=,/=,(a operator =b 要比 a=a operator b 效率更高,它只查询一次a的值)
/返回的是一个浮点型数据,如果需要返回整数值,可以使用//或者int()
27,int类型是固定的,一旦赋值就不能改变
28,str类型也是固定的,在使用+=后会重新创建一个新的字符串,(列表同样支持+=,但是列表不是固定的)
固定的数据类型比可变的数据类型更高效
>>> a="hello" >>> a+="world" >>> a 'helloworld'
>>> a=[1,2,3,4,5] >>> a+=[6] >>> a [1, 2, 3, 4, 5, 6]
使用对象和非对象的区别
>>> a=["hello","world"] >>> a+="baby" >>> a ['hello', 'world', 'b', 'a', 'b', 'y']
>>> a=["hello","world"] >>> a+=["baby"] >>> a ['hello', 'world', 'baby']
输入输出
29,input()用于接受用户输入。print()用于打印数据到控制台
如果用户不输入任何数据,只是按Enter,那么input()函数会返回空字符串
在将python重定向到文件时需要捕捉 EOFError
函数的创建与调用
30,函数的创建,函数默认返回None,除非有return Value;
>>> def get_int(msg): while True: try: i=int(input(msg)) return i except ValueError as err: print(err) >>> money=get_int("give me money") give me moneya invalid literal for int() with base 10: 'a' give me money1 >>> money 1
31,模块导入 import sys
python模块实际上就是包含Python代码的.py文件。比如自定义函数与类的定义。
有时候还包含变量等,要使用这些模块就要先导入该模块
不同的数据类型进行比较时会发生TypeError异常