• 0
  • 0
分享
  • 整理了12个必备的Python函数,建议收藏——软件测试圈
  • 曼倩诙谐 2023-03-02 13:11:28 字数 2945 阅读 1007 收藏 0

  前言

  新手在做写代码的时候容易卡壳,尤其当接触的函数以及其他知识比较多的时候,经常会看完需求之后不知道自己该用什么方法来实现它,实现的逻辑可能你有,但怎么该用什么函数给忘了,这其实就是知识的储备不够,你记不住哪个函数有什么作用,自然一头雾水。

  这几天我专门整理了Python常用的一些函数,从最基础的输入输出函数到正则等12个板块的,总共100多个常用函数,方便小伙伴们进行快速地记忆,每天快速过一遍,用的时候再加深一下,慢慢地你就会摆脱写代码卡壳的状况。

  虽说自学编程的时候我们强调更多的东西是理解和实际去敲代码,但有些东西你是要必须牢记的,否则你写代码将寸步难行。老手当然已经烂记于心,新手想要快速得心应手开发,记住高频使用的函数就是一个好法子。

  1. 基础函数

5-1.jpg

  案例:将浮点型数值转换为字符串,输出转换后的数据类型

  f = 30.5
  ff = str(f)
  print(type(ff))
  #输出结果为 class 'str'

  2. 流程控制

5-2.jpg

  案例:根据用户输入的分数判断成绩,低于50分时提示“你的分数低于50分”,5059分时提示“你的分数在60分左右”,大于等于60分为及格,8090分为优秀,大于90分为非常优秀。

  s = int(input("请输入分数:"))
  if 80 >= s >= 60:
     print("及格")
  elif 80 < s <= 90:
     print("优秀")
  elif 90 < s <= 100:
     print("非常优秀")
  else:
     print("不及格")
     if s > 50:
         print("你的分数在60分左右")
     else:
         print("你的分数低于50分")

  3. 列表

5-3.jpg

  案例:判断6这个数在列表[1,2,2,3,6,4,5,6,8,9,78,564,456]中的位置,并输出其下标。

  l = [1,2,2,3,6,4,5,6,8,9,78,564,456]
  n = l.index(6, 0, 9)
  print(n)
  #输出结果为  4

  4. 元组

5-4.jpg

  案例:修改元组

  #取元组下标在1~4之间的3个数,转换成列表
  t = (1,2,3,4,5)
  print(t[1:4])
  l = list(t)
  print(l)
  #在列表下标为2的位置插入1个6
  l[2]=6
  print(l)
  #讲修改后的列表转换成元组并输出
  t=tuple(l)
  print(t)
  #运行结果为:
  (2, 3, 4)
  [1, 2, 3, 4, 5]
  [1, 2, 6, 4, 5]
  (1, 2, 6, 4, 5)

  5. 字符串

5-5.jpg

  案例:用format()的三种方式输出字符串

  方式1:用数字占位(下标):

  "{0} 嘿嘿".format("Python")
  a=100
  s = "{0}{1}{2} 嘿嘿"
  s2 = s.format(a,"JAVA","C++")
  print(s2)
  #运行结果为:100JAVAC++ 嘿嘿

  方式2:用{} 占位:

  a=100
  s = "{}{}{} 嘿嘿"
  s2 = s.format(a,"JAVA","C++","C# ")
  print(s2)
  #运行结果为:100JAVAC++ 嘿嘿

  方式3:用字母占位:

  s = "{a}{b}{c} 嘿嘿"
  s2 = s.format(b="JAVA",a="C++",c="C# ")
  print(s2)
  #运行结果为:C++JAVAC#  嘿嘿

  6. 字典

5-6.jpg

  案例:在字典中查找数据:

  d = {"name": "小黑"}
  print(d.get("name2", "没有查到"))
  print(d.get("name"))
  #运行结果为:
  没有查到
  小黑

  7. 函数

5-7.jpg

  函数这块重头戏更多的是自定义函数,常用的内置函数不是很多,主要有以下几个:

  案例:在函数中定义一个局部变量,跳出函数仍能调用该变量

  def fun1():
     global b
     b=100
     print(b)
  fun1()
  print(b)
  #运行结果为:
  100
  100

  8. 进程和线程

5-8.jpg

  案例:继承Thread类实现:

  #多线程的创建
  class MyThread(threading.Thread):
     def __init__(self,name):
         super().__init__()
         self.name = name
     def run(self):
         #线程要做的事情
         for i in range(5):
             print(self.name)
             time.sleep(0.2)
  #实例化子线程
  t1 = MyThread("凉凉")
  t2 = MyThread("最亲的人")
  t1.start()
  t2.start()

  9. 模块与包

5-9.jpg

  案例:包的使用方式4:

  from my_package1 import my_module3
  print(my_module3.a)
  my_module3.fun4()

  10. 文件操作

  (1)常规文件操作

5-10.jpg

  关于文件操作的常规模式:

5-11.jpg

  file的对象属性

5-12.jpg

  file对象的方法

5-13.jpg

  (2)OS模块

   关于文件的功能

5-14.jpg

   关于文件夹的功能

5-15.jpg

  11. 修饰器/装饰器

5-16.jpg

  案例:classmethod的用法举例:

  class B:
     age = 10
     def __init__(self,name):
         self.name = name
     @classmethod
     def eat(cls): #普通函数
         print(cls.age)
     def sleep(self):
         print(self)
  b = B("小贱人")
  b.eat()
  #运行结果为:10

  12. 正则

5-17.jpg

  案例:用split()函数分割一个字符串并转换成列表:

  import re
  s = "abcabcacc"
  l = re.split("b",s)
  print(l)
  #运行结果为:['a', 'ca', 'cacc']

  结语

  这篇文章的目的,不是为了教大家怎么使用函数,而是为了快速、便捷地记住常用的函数名,所以没有把每个函数的用法都给大家举例,你只有记住了函数名字和它的作用之后,你才会有头绪,至于函数的用法,百度一下就出来,用了几次你就会了。

  如果连函数名和它的用途都不知道,你要花的时间和精力就更多了,必然不如我们带着目的性地去查资料会更快些。


作者:佚名    

来源:http://www.51testing.com/html/67/n-7793167.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   关于Fuxi  Fuxi是一款功能强大的跨平台渗透测试工具,该工具基于Python 3开发,支持在Linux、macOS和Windows操作系统上使用,具备良好的跨平台特性。在该工具的帮助下,广大研究人员可以轻松快速地执行渗透测试和安全研究任务。  工具要求  由于该工具基于Python 3开发,因此广大研究人员首先需要在本地设备上安装并配置好Python 3环境。除此之外,该工具的运行还需要使用到下列组件:  Redis   mongoDB  工具安装  Docker使用  docker pull jeffzh3ng/fuxi   docker r...
            0 0 996
            分享
          •        为什么要开展软件测试工作       因为没有经过测试的软件很难在发布之前知道该软件的质量,就好比ISO质量认证一样,测试同样也需要质量的保证,这个时候就需要在团队中开展软件测试的工作。在测试的过程发现软件中存在的问题,及时让开发人员得知并修改问题,在即将发布时,从测试报告中得出软件的质量情况。以往从事过哪些工作?最擅长部分是?       我曾经做过web测试,后台测试,客户端软件,其中包括功能测试,性能测试,用户体验测试。最擅长的是功能测试  &n...
            12 13 3137
            分享
          •   从科幻到科学,虚拟现实已经走了很长的一段路。1935年,Stanley Weinbaum 的科幻小说《皮格马利翁的眼镜》描述了一个借助护目镜进入虚拟世界的故事,而随着科幻故事中的场景逐渐贴近现实,这个故事也逐渐被认为是虚拟现实(VR)的起源。  VR 和 AR  然而尽管虚拟现实技术已经发展了几十年,但由于虚拟现实(VR)和增强现实(AR)的相似性,仍然有很多人容易将两个技术混淆。  VR和AR确实有很多的共同点,对于从未真正接触过VR或AR设备的人来说,很容易认为一切都是VR。事实上,VR和AR更像是一枚硬币的两个侧面,AR/VR专家Tom Emrich说:“在未来的头戴式设备中,同一设...
            0 0 1706
            分享
          • 作为一个在测试一线奋斗多年的老捉虫达人,经常会被人问道这样一个问题,「转行人员应该如何进入测试领域?」今天,我就这个问题做一个完整的回答,顺便说一下进入软件测试这个行业后持续努力的方向,供各位想转行做测试还没转的、已经转行做测试但时间不久的、刚刚进入测试领域的,这几类的小伙伴都可以参考下。对于其中有疑问的,也欢迎持续探讨。软件测试的门槛软件测试,作为软件研发流程中的一环,是软件研发质量的重要保证,而随着互联网产业、软件等需求持续增加,这样的人才需求也持续旺盛,因此,有越来越多的人看准这个机会想进入这个行业。一方面,这一行作为信息基础行业,有着相比于其他行业更高的薪酬待遇;另一方面,随着信息技术...
            0 0 2315
            分享
          •   似乎这个问题看起来应该挺简单的,但是根据我所遇到的问题,有时候遇到的问题看起来是后端缺陷,但其实是前端缺陷。  有时候遇到的问题,看起来是前端缺陷,但却是后端缺陷。  问题  【项目管理】下车金融项目增加产品,提交成功后,再进入页面发现没有增加的产品。  原因分析  新增产品后,再次进入产品信息页面没有展示新增产品问题的可能原因有:  问题排查  F12,查看增加产品点击【提交】后,是否有触发接口。如果没有触发接口,查看控制台是否有异常。没有触发接口,可以判断为前端缺陷。  如果触发了接口,查看日志是否有异常。  在我们不熟悉日志的情况下,我们有可能留意不到没有抛出异常的日志。  留意不到...
            0 0 899
            分享
      • 51testing软件测试圈微信