Python 学习笔记(一)

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异常

原文地址:https://www.cnblogs.com/anbylau2130/p/6873197.html