IDO老徐,在深圳,某上市公司质量部负责人,干了十二年软件测试,公号"简尚" ,博客isTester.com ,关注「软件测试从业者综合能力提升」,微信957863300

python入门之常用模块及方法

上一篇 / 下一篇  2016-05-03 18:10:02 / 个人分类:Python

51Testing软件测试网0S/L1e)b%h^L!Tr&y,w+A`
很多同学想学习自动化、学习脚本;老徐基本上推荐的都是Python
为啥?
相对其他语言简单;
今天开始,老徐陆续分享Python入门基础,感兴趣的可关注下;

2T a:MlQ p;r:eD.QG0
51Testing软件测试网5tRO0w Z4jQ

.sys模块51Testing软件测试网l*?`%L'F_F

*sys.path:python的环境变量列表,即执行脚本时,查找的路径列表51Testing软件测试网J5JKhx:X8P W6]*tk8v

例:sys.path.append(os.getcwd()):将当前路径加入到路径列表51Testing软件测试网)? L&u9i?{-`/M

   还有一种方法就是,将路径写入到pth文件,并将pth文件放到libsitepage目录

F6W J1q/{${K0

*sys.argv[]:参数列表,sys.argv[0]表示脚本本省,1为第一个参数

SVp(@Tv&C^0

sys.stdout sys.stdin sys.stderr:输出输入流51Testing软件测试网1H6P\!t!lyl

 sys.stdout.write('hello')相当于print

cP`1\q-GW%Z0

 51Testing软件测试网:l&K Z vq(`e

.os模块

5Ywgpl B0

os.sep:文件路径分隔符,windows\\51Testing软件测试网i4S G#Z%u)Cm U XY

os.system(filepath);执行可执行文件

-j}Z_;F7M0

os.startfile(filepath):system等价,但是可以忽略路径中的空格

{ G(v sc)T!SQmB`0

os.getcwd():获取当前路径51Testing软件测试网3@/[H DH-F!_B

os.chdir():改变当前路径51Testing软件测试网%G+EY)S'aI K

os.path.dirname():获取文件路径所在目录51Testing软件测试网 D$S~:X,a(F {VE1D

os.path.abspath():获取绝对路径

+r?F-L GN#}0

os.listdir():列出目录下的文件以及子目录

h MUc"hE'U0

os.path.isfile os.path.isdir

?+^E{] Ij0

例:dirname='a:\temp'51Testing软件测试网l-} e0@4}Z3`.M

[f for f in os.path.listdir(dirname) is os.path.isfile(os.path.join(dirname,f))]

+Y_/B2d8a8C v m0

列出目录下所有文件,不包含子目录

.p8V4T zM*_)n x]$\#R0

os.path.split():分割目录

'Qm D&r!z}?9?4C0

例:

9f/o8QqH]dwqR:L0

>>>os.path.split('d:\\temp\\script\\sample1.py')51Testing软件测试网+_$C%a;J#[-C

['d:\\src\\script',''sample1.py']

U/o ?#nH4q5Nd-Aq0

>>>os.path.splittest('hello.py')51Testing软件测试网k0ql&V)}?

('hello','.py')51Testing软件测试网6Pw-q{D1MQp'@:v9G

*os.walkfilepathtopdown=true:遍历文件夹下所有子目录

(J.rxnb0

返回3个元组,dirpath路径,dirname:子目录,filename:文件名称,topdowntrue代表从顶向底迭代51Testing软件测试网\fi5\IQ-t

例:51Testing软件测试网E4x2oS\R|/k

>>>for dirpath,dirname,filename in os.walk("d:\\temp"):51Testing软件测试网3u8FQ qRrJT

       for f in filename:

:I(mR&cu'd3J0

           print os.path.join(dirpath,filename)51Testing软件测试网B8d]4X;cx&i

 打印文件下的所有文件的完整路径,包括所有子目录下的文件

%Oc ^Us-v]0

 51Testing软件测试网F%v1[%m:q

 

-wI;EV!W b(fP8D)d0

.re模块,正则表达式51Testing软件测试网j&e+L:l$D%Ce

re.search('[0-9]','123'):返回matchobject。值为true51Testing软件测试网)hGp Z2eXc RF

re.sub'[a-z]','1',str:将字符串str所有小写字母用1替换

Gf;g5K|!r#I5a#s!U0

re.groups51Testing软件测试网;_wXv0qb&O%q

>>>phone=re.compile(r'^(\d{3}-(\d{3})-(\d{4})$')51Testing软件测试网Io%Jeh9_X

>>>phone.search('123-456-7890').groups()

*n)lZI@0

('123','456','7890')51Testing软件测试网Q)\IG(k+j F

 51Testing软件测试网@9@i!?m"fQ!V Bc

 51Testing软件测试网.f$cwwn

.time模块

(~ zBo(\g0

time.sleep(sec):休眠51Testing软件测试网3G"Q Ri?0A{

time.strftime'%Y%m%d%H%M%S'):生成时间戳

t/y/U4l/s+B6L6BI(p a b H`0

如:'20160220102101'51Testing软件测试网o"i Uq6Sre

除了time模块还可以使用datetime模块51Testing软件测试网@,g~3AUw{S

>>> from datetime import datetime51Testing软件测试网A(vd4yB8J%[

>>> n=datetime.today()

#k"g vr&?+K0

>>> n.year

1{w` KZ h K?0

201651Testing软件测试网'?1G] IN v0h9iEo m

 51Testing软件测试网3o"M,{'lLIJ YX3qk

.random模块

6b&gqg"R0

*random.randrenge(1,101):生成1101之间的随机数

pfs+Je8}0

*random.choice:生成给定序列的随机数

t)J,oba Ko)SdQ}0

>>> random.choice(string.ascii_letters)

txS| x7c&]0

'G'51Testing软件测试网y9CKFH IZ

random.sample():生成指定长度的随机序列

(F&ASC+V @0

>>> random.sample(string.ascii_lowercase,5)51Testing软件测试网.a0f/v{t

['v', 'g', 'j', 'l', 'w']51Testing软件测试网/J8G?9^C+I@


gg+jou9g'a2f(G2F051Testing软件测试网a9r!OQL-@ EL|x

51Testing软件测试网 Wa tfxRyu!k

T)a"Cz f oR0

TAG: Python

 

评分:0

我来说两句

xuquan

xuquan

IDO老徐,坐标深圳,测试经理,干了十年测试,公号"简尚" ,个人博客isTester.com ,关注「软件测试从业者综合能力提升」,微信957863300

日历

« 2022-06-30  
   1234
567891011
12131415161718
19202122232425
2627282930  

数据统计

  • 访问量: 793695
  • 日志数: 427
  • 建立时间: 2012-06-04
  • 更新时间: 2022-02-23

RSS订阅

Open Toolbar