前言:这是此书大体架构,无论多简陋,我都称它为1.0版。之后会多次修订。特别sb(此处特质简单的意思)的知识点就不往里写了。
一:碎碎篇
数据类型 | 备注 | 备注 |
数字 | int,long,float,complex | 数字和bool,共5种简单类型 |
字符串 | string | |
逻辑值 | 0,none,空的量,False|||非空量,非零数 | |
列表 | list | |
元组 | tuple |
类型层次结构 | ||
简单类型 | ||
容器类型 | ||
代码类型 | ||
内部类型 |
语言 | 变量特点 | 内存管理 | ||
python | ||||
符号 | 作用 | 说明 |
* | 匹配0次或多次 | 怎么着都成 |
+ | 匹配一次或多次 | 可以有 |
? | 匹配0次或一次 | 有或没有 |
{m} | 重复m次 | |
{m,n} | 重复m到n次 |
append(x) | 追加到链尾 |
extend(L) | 追加一个列表 |
insert(i,x) | 在位置i插入x |
remove(x) | 删除第一个值为x的元素 |
reverse() | 反转序列 |
pop([i]) | 返回并删除位置为i的元素 |
index(x) | 返回x在列表中第一个索引 |
count(x) | 返回x出现的次数 |
sort() | 排序 |
len(L) | 返回L的长度 |
del list[i] | 删除索引为 i 的元素 |
----------------------------------------------------------------------------------------------------------------------------
2.安装篇
模块 | 文件 |
MySQLdb | rpm -ivh MySQL-python-1.2.3 |
Image | yum install python-imaging |
telnet | yum install telnet |
3.代码篇
————————————————————————————————————————
fibonacci【1】
def fib(n):
a,b = 0,1
if n == 1:
print 1
while b<n:
print b,
a,b = b,a+b
fibonacci【2】
def fib2(n):
result = []
a,b = 0,1
while b<n:
result.append(b)
a,b = b,a+b
return result
fibonacci【3】
import fibo
fibo.fib(1000)
fibo.fib2(100)
——————————————————————————————————————————————————————
generator生成器
def ng():
i=0
while True:
yield i
i+=1
for item in ng():
print item
map
def foo(x):
return x*x
print map(foo,range(10))
#或者
print map(lambda x:x**2,range(10))
filter
def foo(x):
return x%2==0
print filter(foo,range(100))
reduce
def foo(perms,x):
i = 0
while perms[i]**2<=x:
if x%perms[i] == 0:
return perms
else:
i+=1
else:
perms.append(x)
return perms
print reduce(foo,range(5,100,2),[2,3])
_____________________________________________________________________________________________
四.模块篇
模块名 | 作用 | |
os.path.split | os拆分路径,返回一个tuple(文件目录,文件名) | |
os.path.basename | 只获取某路径对应的文件名 | |
os.path.dirname | 只获取某路径对应的路径 | |
os.path.splitext | 将路径、文件名、扩展名分开 | |
os.path.commonprefix | 在一组路径中,找一个共同的前缀 | |
os.path.jion | 组合一些零散的字符串,生成一个安全的路径表示 | |
os.path.expanduser | 寻找用户的好home目录 | |
os.path.expandvars | 读取路径中系统环境变量的值 | |
os.path.normpath | 处理不规则路径字符串,将其转化为正常的路径 | |
os.path.abspath | 将相对路径转化为绝对路径 | |
time.time( ) | 获取当前时间戳 | |
time.ctime( ) | 对当前时间格式化 | |
time.clock( ) | 返回现实世界的时间 | |
time.gmtime( ) | 当前UTC时间 | |
time.localtime( ) | 当前时间域的当前时间 | |
time.mktime( ) | 接收struct_time参数并转化为浮点型表示 | |
time.strptime( ) | ||
time.strftime( ) | ||
random.randint( ) | 生成随机整数 | |
random.randrange( ) | 随机选取指定证书序列中的某个元素 | |
random.random( ) | 生成(0,1)随机浮点数 | |
random.uniform( ) | 生成随机浮点数 | |
random.choice( ) | 生成随机某个字符,字符串 | |
random.sample( ) | 随机生成字符串,可指定长度 | |
random.shuffle( ) | 打乱排序 | |
socket.socket( ) | 创建socket对象 | |
socket.bind( ) | 绑定socket | |
socket.listen( ) | 服务器监听连接 | |
socket.accept( ) | 接受客户端连接 | |
socket.sendall( ) | 发送字符串 | |
socket.recv( ) | 接收字符串 | |
socket.close( ) | 关闭与客户端的连接 | |
socket.connect( ) | 连接指定的服务器端 | |