zoukankan      html  css  js  c++  java
  • 两个月学习Python的胡言乱语

     

      露珠是一名爱好养花的测试员,熟悉python,减少了很多重复性的工作。扯一扯这两个月的学习总结:

    基础

      语法,数据结构什么的翻一遍手册足够了,用到的时候不会了再查,相信只有你想不到的没有python不支持的(此处忽略老牛)。

    文件

      嘛,作为一名测试,起初最需要用到的就是python的文件操作,各种读写文件,分析数据神马的。。这里需要用到的就是python file操作、以及各种数据结构的用法了,比如List,dict 等等,,至于后台数据生成的文件,大多是json啦,excel啦,cpickle啦,这些都有现成的库支持。

      比如, json的用法

    import json

     

    #data获取到的是一个dict或者list结构的数据

    data = json.load(open(filename, 'r'))

    #将dict dump进一个文件,存储格式为json格式

    json.dump({'x':1, 'y':2}, open(filename, 'w'))

      其他的类似。。

    异常处理

      在文件读写或数据分析时,经常会因为各种原因导致程序不能正常运行,比如,json文件可能由其他语言生成,空数据是null,但python中没有null,只有'',这个时候数据分析就会出现异常,但是大多情况下,我们一条或几条数据的异常并不影响我们的结果,所以,我们需要对这些异常进行捕获。

    try:

    except Exception:

      可以帮助你跳过这些异常,即便这样了,或许你需要有个Log来记录下这些异常,不影响结果但可能需要了解出现了哪些异常,露珠用了logging module来生成log,python的log module有很多种, ^_^ 功能强不强大不要紧,够用就行。

      这些只是对程序已知可能出现的异常进行了处理,但往往,最头疼的是程序中不可知的一些异常,导致程序崩溃,甚至崩溃时不留下一点痕迹,嘛,露珠在自己电脑上跑了个文件解析的程序,跑了24h+,突然就崩溃了,,哭了,好在最后各种办法查到了崩溃的位置,然后更改下代码接着跑,更改之后再也不怕它崩溃了 ^_^。

      用到的方法就是:atexit。用法:

    import @atexit.register

    def atexit_fun():

        ##

        do_my_work()

      在程序崩溃退出前做好善后工作,以防措手不及 ^_^。

    资源分配

      露珠的这个文件分析程序,之所以跑了那么那么久,一开始露珠也不知道瓶颈在哪,不过通过profile工具,就能很方便的看到程序运行时资源的分配(嘛,这里要说下,分析资源分配时只用少部分数据即可,不需要跑一天一夜)。至于profile具体用法,自行百度哦 ^_^。。

      有些时候,多线程可能会对程序的执行效率有所改善。Python自带有thread库,但是注意线程安全哦,python的原生数据结构都不是线程安全的,需要搭配thread.lock使用。这里python threading.thread露珠需要提醒下童鞋们,threading.thread重写了run()方法,但是调动线程用的是start()方法,反正我是犯2了 =O=

    以上说的是作为一名测试开发会用到的技能,下面扯一扯测试人员需要的技能:

    单元测试

    这里露珠用的unittest,还有个库叫做coverage,是做代码覆盖率统计测试的,具体用法百度哦 ^_^,见谅见谅~~

    测试中,不同的项目或者功能需要我们安装不同版本的库,如果在一台机子上一直这么搞的话,估计要疯了,露珠推荐virtualenv,一个虚拟的python环境,在虚拟环境中所安装的库不会影响本地,虚拟环境可以搭多个,用完删掉虚拟环境即可。

      两个月的学习大体就这些了 ^_^,露珠第一次写博文,有帮助给赞哦,另外,有错误的地方请指正 ^_^~~

     

  • 相关阅读:
    hdu1159 LCS模板题
    RabbitMQ入门
    Dubbo
    SpringMVC
    MySQL的再理解
    ElasticSearch
    redis入门学习
    Swagger
    SSM整合
    MybatisPlus
  • 原文地址:https://www.cnblogs.com/xuele/p/4387910.html
Copyright © 2011-2022 走看看