1、正则表达式替换
目标: 将字符串line中的 overview.gif 替换成其他字符串
|
1
2
3
4
5
6
7
8
9
10
11
|
',re.I)
',line)
>
|
注意: 其中 \1 是匹配到的数据,可以通过这样的方式直接引用
2、遍历目录方法
在某些时候,我们需要遍历某个目录找出特定的文件列表,可以通过os.walk方法来遍历,非常方便
|
1
2
3
4
5
6
7
8
9
10
11
|
os
]
:
# 排除特定目录
:
# 查找特定扩展名的文件
)
fileList
|
3、列表按列排序(list sort)
如果列表的每个元素都是一个元组(tuple),我们要根据元组的某列来排序的化,可参考如下方法
下面例子我们是根据元组的第2列和第3列数据来排序的,而且是倒序(reverse=True)
|
1
2
3
4
5
6
7
8
9
10
11
12
|
,
]
]
17
)
b
,
]
)
c
,
]
|
4、列表去重(list uniq)
有时候需要将list中重复的元素删除,就要使用如下方法
|
1
2
3
4
5
6
7
|
]
)
)
>>>
]
)
)
|
5、字典排序(dict sort)
一般来说,我们都是根据字典的key来进行排序,但是我们如果想根据字典的value值来排序,就使用如下方法
|
1
2
3
4
5
|
itemgetter
}
)
_aa
]
|
从上面的运行结果看到,按照字典的value值进行排序的
6、字典,列表,字符串互转
以下是生成数据库连接字符串,从字典转换到字符串
|
1
2
3
4
5
|
}
]
]
)
'server=mpilgrim;uid=sa;database=master;pwd=secret'
|
下面的例子 是将字符串转化为字典
|
1
2
3
4
5
6
|
'server=mpilgrim;uid=sa;database=master;pwd=secret'
}
]
.
aa
}
|
7、时间对象操作
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
将时间对象转换成字符串
datetime
)
'2011-01-20 14:05'
时间大小比较
time
)
)
t2
False
t2
True
8小时前的时间
)
'2011-01-20 15:02'
)
'2011-01-20 07:03'
将字符串转换成时间对象
)
)
>
endtime
00
time
1302153828
)
'2011-04-07 13:23:48'
|
8、命令行参数解析(getopt)
通常在编写一些日运维脚本时,需要根据不同的条件,输入不同的命令行选项来实现不同的功能 在Python中提供了getopt模块很好的实现了命令行参数的解析,下面距离说明。请看如下程序:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#!/usr/bin/env python
# -*- coding: utf-8 -*-
getopt
:
'''''
Usage: analyse_stock.py [options...]
Options:
-e : Exchange Name
-c : User-Defined Category Name
-f : Read stock info from file and save to db
-d : delete from db by stock code
-n : stock name
-s : stock code
-h : this help info
'''
:
)
:
)
)
:
)
:
:
)
)
:
arg
:
arg
:
arg
:
arg
:
arg
:
arg
)
|
9、print 格式化输出
9.1、格式化输出字符串
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
3个字母
str
abc
10
str
abcdefg
截取字符串,按照固定宽度输出
str
abc
浮点类型数据位数保留
fpformat
0.0030000000005
)
b
0.003000
round函数
*
)
c
0.03
100
)
)
)
|
9.2、进制转换
有些时候需要作不同进制转换,可以参考下面的例子(%x 十六进制,%d 十进制,%o 八进制)
|
1
2
3
|
10
)
12
|
10、Python调用系统命令或者脚本
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
程序中无法获得到输出和返回值
os
)
)
cpuinfo
0
程序中可以获得命令输出,但是不能得到执行的返回值
)
)
程序中可以获得命令输出和执行的返回值
commands
)
)
|
11、Python 捕获用户 Ctrl+C ,Ctrl+D 事件
有些时候,需要在程序中捕获用户键盘事件,比如ctrl+c退出,这样可以更好的安全退出程序
|
1
2
3
4
5
6
|
:
)
:
:
|
12、Python 读写文件
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
一次性读入文件到列表,速度较快,适用文件比较小的情况下
)
)
)
:
)
)
)
)
)
)
str后加上一个换行符
,原样写入,不会在每行后面加
|