自动化测试面试常见技术题目

news2024/11/25 2:22:21

1:一行代码实现1--100之和

print(sum(list(range(1,101))))

2:如何在一个函数内部修改全局变量

  global  修改全局变量

         局部作用域只能调用全局作用域的变量,但是不熊修改全局作用域的变量,如果想要修改全局作用域的变量需要global一下

3:列出5个python标准库

  re

  sys

  time

  os

  random

  math

  datetime

  subprocess

4:字典如何删除键和合并两个字典

  del dict[key]  pop dict[key]    删除

  update  +  dict(dict1.items()+dict2.items())  +  dict(dict_a,dict_b)  

5:谈下python的GIL

  GIL 是python的全局解释器锁,

  同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),
  使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,
  则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行

  多进程中因为每个进程都能被系统分配资源,相当于每个进程有了一个python解释器,所以多进程可以实现多个进程的同时运行,缺点是进程系统资源开销大

6:python实现列表去重的方法   先把列表转set集合,再转成list列表 

  set(list())

7:fun(*args,**kwargs)中的*args,**kwargs什么意思?
  *args, 可变数量参数  接收位置参数自动封装成元组
  **kwargs 关键字可变数量参数  接收关键字参数会自动封装成字典、

8:python2和python3的range(100)的区别
  python2返回列表,python3返回迭代器,节约内存

9:一句话解释什么样的语言能够用装饰器? 

  函数名可以当成参数传递的语言

10:python内建数据类型有哪些 

  int

  float

  str

  list

  set

  布尔

  ddictionary

  tuple元组

11:简述面向对象中__new__和__init__区别  

  __init__  参数self,构造函数,初始化方法,创建对象后,就立刻被默认调用了,可接收参数,

  __new__  参数cls,必须有返回值,py3默认继承父类object的new方法,类名实例化后会返回一个实例

  自己重构__new__方法的时候注意,一把需要把父类object的new函数生成的实例return出来

   __init__  的参数self,就是__new__返回的实例,实例化一个对象的时候__new__方法先调用

    调用后返回一个self实例, 

  如果__new__创建的是当前类的实例,会自动调用__init__函数,通过return语句里面调用的__new__函数的第一个参数是cls来保证是当前类实例,
    如果是其他类的类名,;那么实际创建返回的就是其他类的实例,其实就不会调用当前类的__init__函数,也不会调用其他类的__init__函数。

12:简述with方法打开处理文件帮我我们做了什么?   

    打开文件在进行读写的时候可能会出现一些异常状况,如果按照常规的f.open写法,我们需要try,except,finally,  

    做异常判断,并且文件最终不管遇到什么情况,都要执行finally f.close()关闭文件,

    with方法帮我们实现了finally中f.close

    open的话打开文件代码gg不会自动关闭文件,with open会

13:列表[1,2,3,4,5],请使用map()函数输出[1,4,9,16,25],并使用列表推导式提取出大于10的数,最终输出[16,25]    

list_a=[1,2,3,4,5]
res=map(lambda x:x**2,list_a)
rep=[i for i in res if i >10]
print(rep)

14:python中生成随机整数、随机小数、0--1之间小数方法

  random.random  随机返回0-1

  random.randint(1,10)  返回0-1随机小数

  np.random.randn(5)   返回5个随机小数

15:避免转义需要给字符串加哪个字母表示原始字符串?       r

16:<div class="nam">中国</div>,用正则匹配出标签里面的内容(“中国”),其中class的类名是不确定的 

  div class="nam">(.*?)</div>

17:python中断言方法举例

  assert

  assrtin

  assertnotin

  assertequal

  assertenotqual

  ssertTrue

  assertFalse

  assertIsNone

  assertIsNotNone

18:数据表student有id,name,score,city字段,其中name中的名字可有重复,需要消除重复行,请写sql语句

   select distinct name from student       distinct name  把搜索出来的neme数据distinct去重    

19::10个Linux常用命令 

  cat  vi  tail  header  echo  mkdir  netstat  touch  df

  clear  mount  ls  ll  cp

20:python2和python3区别?列举5个  

  1:print  2没括号,3有括号

  2:py3默认文件编码是utf8,默认字符集编码是unicode,py2默认ascll

  3:/  py3默认除法,py2默认乘除

  4:range(),map等内置函数,py3默认返回迭代器,py2默认返回列表

  5:py3类默认继承objct新式类,py2。7默认是经典类

  6:py3是input  py2是raw_input

21:列出python中可变数据类型和不可变数据类型,并简述原理

  可变:list列表,set集合,dictionary字典

  不可变:int  str  tuple元组

  不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象,而对于相同的值的对象,

    在内存中则只有一个对象(一个地址),如下图用id()方法可以打印对象的id

  允许变量的值发生变化,即如果对变量进行append、+=等这种操作后,只是改变了变量的值,

    而不会新建一个对象,变量引用的对象的地址也不会变化,

22:s = "ajldjlajfdljfddd",去重并从小到大排序输出"adfjl"

s = "ajldjlajfdljfddd"
res=list(set(s))
res.sort()
print("".join(res))

23:用lambda函数实现两个数相乘 

func=lambda x,y:x*y

24:字典根据键从小到大排序dict={"name":"zs","age":18,"city":"深圳","tel":"1362626627"}

dict={"name":"zs","age":18,"city":"深圳","tel":"1362626627"}
res=sorted(dict)
ret={i:dict[i] for i in res}
print(ret)

sort 是应用在 list上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操

25:利用collections库的Counter方法统计字符串每个单词出现的次数"kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h"

from collections import Counter
str_a="kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h"
res=Counter(str_a)
nun_1=Counter(str_a).most_common(3)     #取前三位
print(nun_1)

26:字符串a = "not 404 found 张三 99 深圳",每个词中间是空格,用正则过滤掉英文和数字,最终输出"张三 深圳"

a = "not 404 found 张三 99 深圳"
import re
res=re.findall('[^\x00-\xff]{2}',a)
ret="".join(res)
print(ret)
#表达式表示的是0- 255 的ASCII码

27:filter方法求出列表所有奇数并构造新列表,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
def func(x):
    if x %2 !=0:
        return x
res=filter(func,a)
print(list(res))    #[1, 3, 5, 7, 9]

28:列表推导式求列表所有奇数并构造新列表,a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
res=[i for i in a if i%2!=0]
print(res)

29:正则re.complie作用   

    一个正则表达式如果很长而且需要经常使用的话使用re.compile是将正则表达式编译成一个对象,加快速度,并重复使用

30:a=(1,)b=(1),c=("1") 分别是什么类型的数据? 

      a=(1,)    元组

    b=(1)     int数字类型

    c=("1")    str字符串

31:请写一个函数reverse,参数是一个列表,该函数将列表中的所有元素倒序排列并返回

def reverse_func(lis):
    alist=[]
    for i in range(0,len(lis)):
        nun=lis.pop()
        alist.append(nun)
    return alist
print(reverse_func([1,2,3,4]))

reverse是list的内置方法,reversed是个函数  list_num.reverse()#此处相当于把list_num 逆置了
  reverse是改变原来的list,
reversed的对象可以是列表和字符串,返回一个反转后的迭代器,但必须要转化成list(),不然不能使用
s1=['a','b','c']s2="abc"print(reversed(s1))print("s1:",list(reversed(s1)))print("s2:",list(reversed(s2)))print("s2:",str(reversed(s2)))

这里为你准备了200G软件测试教程9资料,包括用例模板、计划模板、报告模板、性能调优、自
动化教程、测开模板、简历模板、面试技巧、大厂真题等!点击下方自行获取:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/979142.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年中国信通院铸基计划“文本图像篡改检测系统技术规范”研讨会成功召开

2023年中国信通院铸基计划“文本图像篡改检测系统技术规范”&#xff08;简称“规范”&#xff09;研讨会于2023年8月16日在中国信息通信研究院成功召开&#xff0c;来自中国信息通信研究院、上海合合信息科技股份有限公司&#xff08;简称“合合信息”&#xff09;、华南理工大…

【文末送书】全栈开发流程——后端连接数据源(二)

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

【C#项目实战】控制台游戏 勇士斗恶龙(2)——游戏场景的设置以及玩家战斗逻辑

君兮_的个人主页 即使走的再远&#xff0c;也勿忘启程时的初心 C/C 游戏开发 Hello,米娜桑们&#xff0c;这里是君兮_&#xff0c;最近开始正式的步入学习游戏开发的正轨&#xff0c;想要通过写博客的方式来分享自己学到的知识和经验&#xff0c;这就是开设本专栏的目的。希望…

【web开发】2、css基础

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、CSS是什么&#xff1f;二、使用步骤2.1.css的存放位置2.2.选择器2.3.常用CSS样式介绍与示例 一、CSS是什么&#xff1f; 层叠样式表(英文全称&#xff1a;Casc…

vue2+element-ui批量导入方法并判断上传的文件是否为xls或xlsx

业务需求: 代码结构: <el-dialogtitle"批量导入":close-on-click-modal"true"close"close()":visible"true"width"35%":center"true"><div class"el-dialog-div"><!-- 头部区域布局 -…

万物互联:软件与硬件的协同之道

在当今数字化时代&#xff0c;我们身边的一切似乎都与计算机和互联网有关。从智能手机到智能家居设备&#xff0c;从自动驾驶汽车到工业生产线&#xff0c;无论我们走到哪里&#xff0c;都能看到软件和硬件的协同作用。本文将探讨这种协同作用&#xff0c;解释软件和硬件如何相…

R语言机器学习之caret包详解(二:模型的训练以及调参)

R语言机器学习之caret包详解&#xff08;二&#xff1a;模型的训练以及调参&#xff09; 前言caret包模型调优的策略、示例、以及一些小tips 前言 在之前的博客中我们详细介绍过了数据的拆分策略、各种数据处理的方法、各种交叉验证的方法&#xff0c;并且以示例介绍了R函数cre…

传统文化,运用好了,能生财!

千年以来&#xff0c;五行是中华民族文化的瑰宝&#xff0c;历代先贤智慧的结晶。五行学说是中国传统文化重要组成部分&#xff0c;是中国古代哲学思想的重要内容。古人认为&#xff0c;万物由五种相关的基本物质木、火、土、 金、水构成&#xff0c;这就是五行。 五行思想强调…

NFTScan 浏览器再升级:优质数据服务新体验来袭

当前&#xff0c;高质量的 NFT 数据服务已成为区块链用户和开发者的必需。为满足用户数据需求&#xff0c;NFTScan 主站近日进行全面升级&#xff0c;优化了数据服务板块的页面结构&#xff0c;实现更清晰简洁的布局和交互。 NFTScan 的改版充分考虑用户和开发者的数据体验&am…

【python】TCP socket服务器 Demo

目录 一、单线程服务器 二、多线程服务器 三、多线程服务器&#xff08;发送和接收分离&#xff09; 一、单线程服务器 说明&#xff1a;只能连接一个客户端 import socket,binascii# 创建一个 TCP 套接字 server_socket socket.socket(socket.AF_INET, socket.SOCK_STRE…

【C++基础】4、变量

文章目录 【 1、变量的定义 】【 2、变量的声明 】示例 【 3、左值和右值 】 变量&#xff1a;相当于是程序可操作的数据存储区的名称。在 C 中&#xff0c;有多种变量类型可用于存储不同种类的数据。C 中每个变量都有指定的类型&#xff0c;类型决定了变量存储的大小和布局&am…

文末送书!谈谈原型模式在JAVA实战开发中的应用(附源码+面试题)

作者主页&#xff1a;Designer 小郑 作者简介&#xff1a;3年JAVA全栈开发经验&#xff0c;专注JAVA技术、系统定制、远程指导&#xff0c;致力于企业数字化转型&#xff0c;CSDN博客专家&#xff0c;蓝桥云课认证讲师。 本文讲解了 Java 设计模式中的原型模式&#xff0c;并给…

python3

#安装python3 brew install python3 看到下图表示安装python3成功: #将python3 加入环境变量 export PATH$PATH:/opt/homebrew/bin/#查看python 版本 python3 --version#查看pip 版本 pip3 --version#更新python源 pip3 config set global.index-url https://pypi.tuna.tsing…

免费电商api接口,分享给你「建议收藏」

API&#xff08;应用程序编程接口&#xff09; ​ API&#xff08;Application Programming Interface&#xff0c;应用程序接口&#xff09;是一些预先定义的函数&#xff0c;或指软件系统不同组成部分衔接的约定。目的是提供应用程序与开发人员基于某软件或硬件得以访问一组…

高忆管理;三天翻倍!地产“三仙”狂飙

9月6日&#xff0c;一度全部成为“仙股”的三家闻名香港上市房企&#xff0c;融创我国、我国恒大、碧桂园大涨。其间两家已顺利摘掉“仙股”帽子。 截至发稿&#xff0c;融创我国涨20.25%&#xff0c;报1.9港元/股&#xff0c;总市值报104亿港元&#xff0c;不到三个交易日股价…

[LeetCode周赛复盘] 第 361 场周赛20230906

[LeetCode周赛复盘] 第 361 场周赛20230906 一、本周周赛总结2843. 统计对称整数的数目1. 题目描述2. 思路分析3. 代码实现 2844. 生成特殊数字的最少操作1. 题目描述2. 思路分析3. 代码实现 2845. 统计趣味子数组的数目1. 题目描述2. 思路分析3. 代码实现 2846. 边权重均等查…

提升客户体验,你只需要做到这一点

自动回复是指由特定事件或操作触发的自动响应&#xff0c;例如在即时通讯工具上接收消息&#xff0c;它用于通知发件人他们的消息已被收到。不仅可以在WhatsApp&#xff0c;Messenger等渠道上设置自动回复&#xff0c;如果您使用了像SaleSmartly&#xff08;SS客服&#xff09;…

任意文件读取及漏洞复现

文章目录 渗透测试漏洞原理任意文件读取1. 任意文件读取概述1.1 漏洞成因1.2 漏洞危害1.3 漏洞分类1.4 任意文件读取1.4.1 文件读取1.4.2 任意文件读取1.4.3 权限问题 1.5 任意文件下载1.5.1 一般情况1.5.2 PHP实现1.5.3 任意文件下载 2. 任意文件读取攻防2.1 路径过滤2.1.1 过…

无需麻烦验证,文字验证码一键通过

前言 文字验证码&#xff0c;简单易用&#xff0c;安全可靠&#xff01;不需要麻烦的图形识别。这种验证方式不仅方便快捷&#xff0c;而且能有效防止恶意攻击和机器人访问。无需担心复杂操作&#xff0c;只需几秒钟就能完成验证过程。保护您的个人信息和数据安全&#xff0c;…

PG 的状态机和peering过程

首先来解释下什么是pg peering过程&#xff1f; 当最初建立PG之后&#xff0c;那么需要同步这个pg上所有osd中的pg状态。在这个同步状态的过程叫做peering过程。同样当启动osd的时候&#xff0c;这个osd上所有的pg都要进行peering过程&#xff0c;同步pg的状态。peering过程结…