1、class 语句
calss className(base_class):
statement(s)
2、类
calss c1(obj):
x = 32
print c1.x
3、自定义类
class className:
suit
calss calssName(base_class)
suit
4、
type()不会认为子类是一种父类类型。
isinstance()会认为子类是一种父类类型。
5、
字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的。
6、字典实例
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
dict = {}
dict['one'] = "1 - 菜鸟教程"
dict[2] = "2 - 菜鸟工具"
tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}
print (dict['one']) # 输出键为 'one' 的值
print (dict[2]) # 输出键为 2 的值
print (tinydict) # 输出完整的字典
print (tinydict.keys()) # 输出所有键
print (tinydict.values()) # 输出所有值
7、注释
单行注释#
多行注释 ''' '''
或者 """ """
8、三引号:
9、元组:
元组中的值不能修改
10、迭代器
迭代是Python最强大的功能之一,是访问集合元素的一种方式。。
迭代器是一个可以记住遍历的位置的对象。
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter() 和 next()。
字符串,列表或元组对象都可用于创建迭代器:
#!/usr/bin/python3
# -*- codring: -*-
import sys
l = [1, 2, 3, 4, 5]
a = iter(l)
while True:
try:
print(next(a))
except StopIteration:
sys.exit()
11、#! /usr/bin/env python
env可以通过系统的搜索路径
12、input() : 可以直接让命令窗口停留在此刻等待敲下回车键
13、import fileName 首次引入可以执行文件的,但是第二次引入就不能执行文件
想要执行文件,就必须用reload()
>>> from imp import reload
>>>reload(fileName)
这样可以多次执行
14、文件的引入
一个文件名为lmy3.py,文件的内容为 t = "lmy3"
>>>import lmy3
>>>lmy3.y
lmy3
或者
>>>from lmy3 import t
>>>t
lmy3
>>>import lmy3
>>>dir(lmy3)#查看lmy3的所有变量
15、内置对象
数字
字符串 ‘’ ‘’ ‘’
列表 [ ]
字典 { }
元组 ( ) 不能再原处修改 类似常量
文件
集合
编程单元类型
注:(只有列表 字典 集合 可以原处修改, 不能修改 数字 字符串 或元组)
(列表 字典 集合 可包含任意对象)
(列表 字典 集合 可以相互嵌套)
(列表 字典 可以动态库扩大和缩小)
16、str 和 repr
str:一般用途
repr:额外细节
17、Python中 变量没有类型 类型属于对象,而不是变量名
18、raw字符串抑制转义:
m = open('c:\new\test\r.py') 这样会将\n 和 \t 以及\r 分别解析出来,所以 将此句改为
m = open(r'c:\new\test\r.py') 或者
m = open('c:\\new\\test\\r.py')
print(m.read())
19、索引和分片
20、字典(关联数组)
他们同过键将一系列值联系在一起
任意对象的无序组合
可变长 异构 任意嵌套
属于可变映射类型
21、pickle存储Python的原生对象
22、struct模块能构造并解析打包的二进制数据
23、引用 和 复制
>>>x = ['jing', 'ji', 'zhong','guo']
>>>y = [10, x, 20]
>>>z = {'1': x, '2': y}
如果修改x[1]中的值, 其y 和z中所有引用x的值将同时被修改
若不想被修改, 则应该用
>>>b = x.copy()
24、比较 相等 真值
== 表示 操作符的测试值相等
is 表示测试对象的一致性(在同一内存地址中)
字典支持大小的比较
0假 1真
空假 非空真
none意味着未定义,即none中是某些内容,而不是没有内容,是一个真正的对象,并有一块内存
25、循环数据结构:
>>>l = ['lmy']
>>>l.append(l)
>>>l
['l', [...]]
>>>m = [1, 2]
>>>l.append(3)
>>>m
[1, 2, 3]
26、不可变类型不可以在原处改变
>>>t = (1, 2, 3)
>>>t[2] = 4 #error
>>>t = t[:2] + (4,)
或者:
>>>t = t[2:4] + (5,6)
27、函数生成器 yield
28、扩展序列解包
>>>q = [1, 2, 3, 4, 5, 6]
>>>a, b, c = q[0:3]
>>>a, *b = q
>>>*a, b = q
>>>a, *b, c = q
>>>a, *b = 'span'
若没有*或者多个*都错误
>>>a, b = q[0:2],q[2:4]
29、增强赋值语句:
x += x
x **= x
x -= x
x %= x
x <<= x
x |= x
30、enumerate() 返回索引和值
l = [1, 2, 3, 4]
for index , value in enumerate(l):
print(index, value)
31、
dic = {'a': "nice", 'b': "to", 'c': "meet", 'd': 'you'}
for key, value in dic.items():
print (key, value)
32、range迭代器
>>>r = range(10)
>>>I = iter(r)
>>>next(I)
33、map zip filter 迭代器
支持相同结果上的多个活跃迭代器
>>>d = {'a':1, 'b':2, 'c':3}
>>>dkey = d.keys()
>>>dvalue = d.values()
>>>list(dkey)
>>>list(dvalue)
>>>diter = iter(dvalue)
>>>next(diter)
34、内置文档
>>>print(sys.__doc__)
>>>print(int.__doc__)
35、帮助文档
>>>help(dict)
36、html报表
37、函数
1)Python的多态
def f(x, y):
return x * y#x*y完全取决于xy的对象类型
a = f(2, 3)
print(a) #6
b = f('t', 5)
print(b) #ttttt
38、支持多态
#查找字符串里面相同的字符
def intersect(s1,s2):
res = []
for x in s1:
if x in s2:
res.append(x)
return res
39、python的全局变量就是 模块
40、变量名查找顺序:
本地-->函数内-->全局-->内置
默认, 变量名会创建或者改变本地变量
全局声明 和 非本地声明将赋值的变量名映射到文件内部的作用域
41、嵌套函数
def make(m):
def a(n):
return m ** n
return a
>>>make(3)#输出的是<function make.<locals>.a at 0x02218B28>
>>>f = make(2)#让内嵌函数记住2
>>>f(3)#8
>>>f(4)#16
>>>g = make(3)#让内嵌函数记住3
>>>g(3)#27
>>>g(2)#9
42、嵌套函数和lambda
def fuclambda():
x = 4
action = (lambda n: x ** n)
return action
x = fuclambda()
print(x(2))#16
43、作用域 和 带有循环变量的默认参数比较
def makeAction():
act = []
for i in range(5):
act.append(lambda x: i ** x)
return act
44、nonlocal语句:允许对嵌套的函数作用域中的名称赋值
并把这样的名称的作用域查找限制在嵌套的def中
def tester(start):
state = start
def nested(label):
print(label, state)
return nested
1、三引号''''''怎样执行里面的脚本
2、map zip filter 三个迭代器怎样用
3、
calss className(base_class):
statement(s)
2、类
calss c1(obj):
x = 32
print c1.x
3、自定义类
class className:
suit
calss calssName(base_class)
suit
4、
type()不会认为子类是一种父类类型。
isinstance()会认为子类是一种父类类型。
5、
字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的。
6、字典实例
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
dict = {}
dict['one'] = "1 - 菜鸟教程"
dict[2] = "2 - 菜鸟工具"
tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}
print (dict['one']) # 输出键为 'one' 的值
print (dict[2]) # 输出键为 2 的值
print (tinydict) # 输出完整的字典
print (tinydict.keys()) # 输出所有键
print (tinydict.values()) # 输出所有值
7、注释
单行注释#
多行注释 ''' '''
或者 """ """
8、三引号:
9、元组:
元组中的值不能修改
10、迭代器
迭代是Python最强大的功能之一,是访问集合元素的一种方式。。
迭代器是一个可以记住遍历的位置的对象。
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter() 和 next()。
字符串,列表或元组对象都可用于创建迭代器:
#!/usr/bin/python3
# -*- codring: -*-
import sys
l = [1, 2, 3, 4, 5]
a = iter(l)
while True:
try:
print(next(a))
except StopIteration:
sys.exit()
11、#! /usr/bin/env python
env可以通过系统的搜索路径
12、input() : 可以直接让命令窗口停留在此刻等待敲下回车键
13、import fileName 首次引入可以执行文件的,但是第二次引入就不能执行文件
想要执行文件,就必须用reload()
>>> from imp import reload
>>>reload(fileName)
这样可以多次执行
14、文件的引入
一个文件名为lmy3.py,文件的内容为 t = "lmy3"
>>>import lmy3
>>>lmy3.y
lmy3
或者
>>>from lmy3 import t
>>>t
lmy3
>>>import lmy3
>>>dir(lmy3)#查看lmy3的所有变量
15、内置对象
数字
字符串 ‘’ ‘’ ‘’
列表 [ ]
字典 { }
元组 ( ) 不能再原处修改 类似常量
文件
集合
编程单元类型
注:(只有列表 字典 集合 可以原处修改, 不能修改 数字 字符串 或元组)
(列表 字典 集合 可包含任意对象)
(列表 字典 集合 可以相互嵌套)
(列表 字典 可以动态库扩大和缩小)
16、str 和 repr
str:一般用途
repr:额外细节
17、Python中 变量没有类型 类型属于对象,而不是变量名
18、raw字符串抑制转义:
m = open('c:\new\test\r.py') 这样会将\n 和 \t 以及\r 分别解析出来,所以 将此句改为
m = open(r'c:\new\test\r.py') 或者
m = open('c:\\new\\test\\r.py')
print(m.read())
19、索引和分片
20、字典(关联数组)
他们同过键将一系列值联系在一起
任意对象的无序组合
可变长 异构 任意嵌套
属于可变映射类型
21、pickle存储Python的原生对象
22、struct模块能构造并解析打包的二进制数据
23、引用 和 复制
>>>x = ['jing', 'ji', 'zhong','guo']
>>>y = [10, x, 20]
>>>z = {'1': x, '2': y}
如果修改x[1]中的值, 其y 和z中所有引用x的值将同时被修改
若不想被修改, 则应该用
>>>b = x.copy()
24、比较 相等 真值
== 表示 操作符的测试值相等
is 表示测试对象的一致性(在同一内存地址中)
字典支持大小的比较
0假 1真
空假 非空真
none意味着未定义,即none中是某些内容,而不是没有内容,是一个真正的对象,并有一块内存
25、循环数据结构:
>>>l = ['lmy']
>>>l.append(l)
>>>l
['l', [...]]
>>>m = [1, 2]
>>>l.append(3)
>>>m
[1, 2, 3]
26、不可变类型不可以在原处改变
>>>t = (1, 2, 3)
>>>t[2] = 4 #error
>>>t = t[:2] + (4,)
或者:
>>>t = t[2:4] + (5,6)
27、函数生成器 yield
28、扩展序列解包
>>>q = [1, 2, 3, 4, 5, 6]
>>>a, b, c = q[0:3]
>>>a, *b = q
>>>*a, b = q
>>>a, *b, c = q
>>>a, *b = 'span'
若没有*或者多个*都错误
>>>a, b = q[0:2],q[2:4]
29、增强赋值语句:
x += x
x **= x
x -= x
x %= x
x <<= x
x |= x
30、enumerate() 返回索引和值
l = [1, 2, 3, 4]
for index , value in enumerate(l):
print(index, value)
31、
dic = {'a': "nice", 'b': "to", 'c': "meet", 'd': 'you'}
for key, value in dic.items():
print (key, value)
32、range迭代器
>>>r = range(10)
>>>I = iter(r)
>>>next(I)
33、map zip filter 迭代器
支持相同结果上的多个活跃迭代器
>>>d = {'a':1, 'b':2, 'c':3}
>>>dkey = d.keys()
>>>dvalue = d.values()
>>>list(dkey)
>>>list(dvalue)
>>>diter = iter(dvalue)
>>>next(diter)
34、内置文档
>>>print(sys.__doc__)
>>>print(int.__doc__)
35、帮助文档
>>>help(dict)
36、html报表
37、函数
1)Python的多态
def f(x, y):
return x * y#x*y完全取决于xy的对象类型
a = f(2, 3)
print(a) #6
b = f('t', 5)
print(b) #ttttt
38、支持多态
#查找字符串里面相同的字符
def intersect(s1,s2):
res = []
for x in s1:
if x in s2:
res.append(x)
return res
39、python的全局变量就是 模块
40、变量名查找顺序:
本地-->函数内-->全局-->内置
默认, 变量名会创建或者改变本地变量
全局声明 和 非本地声明将赋值的变量名映射到文件内部的作用域
41、嵌套函数
def make(m):
def a(n):
return m ** n
return a
>>>make(3)#输出的是<function make.<locals>.a at 0x02218B28>
>>>f = make(2)#让内嵌函数记住2
>>>f(3)#8
>>>f(4)#16
>>>g = make(3)#让内嵌函数记住3
>>>g(3)#27
>>>g(2)#9
42、嵌套函数和lambda
def fuclambda():
x = 4
action = (lambda n: x ** n)
return action
x = fuclambda()
print(x(2))#16
43、作用域 和 带有循环变量的默认参数比较
def makeAction():
act = []
for i in range(5):
act.append(lambda x: i ** x)
return act
44、nonlocal语句:允许对嵌套的函数作用域中的名称赋值
并把这样的名称的作用域查找限制在嵌套的def中
def tester(start):
state = start
def nested(label):
print(label, state)
return nested
1、三引号''''''怎样执行里面的脚本
2、map zip filter 三个迭代器怎样用
3、