python开发
文章平均质量分 61
深入了解python语言,欢迎浏览!
别走!万哥爱你
这个作者很懒,什么都没留下…
展开
-
Python集合
解析:在Python中创建空集合需要使用函数,也就是set(),即B。在Python中,以下哪个选项可以用于创建一个空集合?非空集合则包含一个或多个唯一的、无序的元素。空集合是一个特殊的集合,它没有任何元素。那么在 Python 中,集合和空集合有什么区别。原创 2024-06-21 17:41:52 · 342 阅读 · 0 评论 -
Python父子继承
1.__init__是一个构造函数,当我们创建一个类的实例时,Python会自动调用该类的__init__函数,并传入该对象自身作为第一个参数(通常习惯上命名为self),然后我们可以在__init__函数中为对象的属性赋初始值,在这个题目中初始值就是4。在Python中,类可以从其他类中继承属性和方法,也叫父子继承。这种继承关系可以是单一继承,即一个子类继承一个父类;也可以是多个继承,即一个子类继承多个父类,这个题目其实就是简单的单一继承。4.obj面向的对象是子类,所以输出的是5,因此答案是B。原创 2024-05-31 17:32:24 · 364 阅读 · 0 评论 -
函数对象引用题目
列表中的每个元素都是一个独立的匿名函数(lambda 函数)列表中有 5 个元素,但它们都是同一个函数对象的引用。列表的输出为 `[1,2,3,4,5]`,输出为 `[1,1,1,1,1]`。包含 5 个相同的元素,都是指向。下列代码的输出是什么?答案是A,你答对了吗?5 个不同的函数对象。原创 2024-05-24 18:04:07 · 339 阅读 · 0 评论 -
Python数据结构哪个支持成员关系测试
对于List和Tuple,我们需要遍历整个序列来检查元素是否存在;对于Dict,我们需要检查键是否存在。Set是Python中唯一直接支持成员关系测试的内置数据结构。List、Tuple和Dict都不直接支持成员关系测试。这使得Set在需要快速检查元素是否存在的场景下非常高效。集合(Set)是Python中无序且不重复的元素集合。下列Python数据结构哪个支持成员关系测试?in运算符来测试一个元素是否属于集合。答案是C,你答对了吗?原创 2024-05-20 12:39:31 · 116 阅读 · 0 评论 -
Python序列解包
解包过程会将 sequence 中的元素依次赋值给变量 a、b、c 等。另外,如果希望将序列中的一部分元素赋值给一个变量,并将剩余的元素组成一个新的列表,可以使用 * 运算符。这样会将 sequence 中的第一个元素赋值给变量 a,并将剩余的元素组成一个列表赋值给变量 rest。它允许你将一个序列(如列表、元组或其他可迭代对象)中的元素解包并赋值给多个变量。在Python中,以下哪个选项用于序列解包(unpacking)?序列解包是一种 Python 中的特性,运算符用于解包序列(如列表、元组等)原创 2024-04-26 17:25:20 · 200 阅读 · 0 评论 -
同行交流群探讨问题:函数foo()含义用法和append用法
函数 foo() 的参数 a 是一个可变对象(列表),并且默认值是一个空列表 []。这个方法可以用于动态地向列表中添加新的元素,而不需要重新分配内存空间。当你调用 foo() 时,如果没有传入参数,将会使用默认的空列表。同行交流群看到这个问题,感觉很有意思,来分析一下。每次调用 foo() 时,都会修改这个默认列表,第二次调用 foo() 返回 [5, 5]。第一次调用 foo() 后返回 [5]用于在列表的末尾添加一个元素。是列表对象的一个方法,答案是B,你答对了吗?2.foo()是什么?原创 2024-04-19 17:30:13 · 150 阅读 · 0 评论 -
Python 中的高阶函数
filter() 函数接受一个函数和一个可迭代对象,然后返回一个由使函数返回值为 True 的元素组成的迭代器。map() 函数接受一个函数和一个可迭代对象(如列表),并将函数应用于可迭代对象的每个元素,返回一个结果列表。sorted() 函数用于对可迭代对象进行排序,并接受一个可选的 key 参数,用于指定排序的规则。常见的高阶函数有 map()、filter()、reduce() 和 sorted()Python 中的高阶函数是指可以接受函数作为参数,或者返回函数作为结果的函数。原创 2024-04-16 15:07:44 · 399 阅读 · 0 评论 -
Python 中可以用于在已排序的列表中查找特定元素的位置的是什么?
Python 标准库中的 bisect 模块提供了 bisect_left() 和 bisect_right() 函数,用于执行二分查找并返回插入元素的位置。index() 方法在列表中查找特定元素的位置,如果找到,则返回元素的索引;search() find() index() locate()这些方法在 Python 中都用于在字符串中查找子字符串或元素的位置。index(): 与 find() 类似,但是如果子字符串不存在,它会引发一个 ValueError 异常,而不是返回 -1。原创 2024-04-15 20:36:57 · 194 阅读 · 0 评论 -
Python模块用于进行日期和时间的处理的是
在计算机科学和编程中,时间戳是一种常见的时间表示方式,因为它能够提供一个统一的方式来表示时间,无论是用于记录事件发生时间还是进行时间相关的计算。datetime 模块中的 timestamp() 方法可以将一个 datetime 对象转换为时间戳。除了 datetime 模块之外,还有一些其他的模块可以用于特定的日期时间操作,例如。Python 中的 time 模块提供了获取当前时间戳的函数 time(),而。它提供了处理日期、时间、时间间隔和时间差异的类和函数。,表示从该起点开始经过的秒数或毫秒数。原创 2024-04-15 16:28:49 · 135 阅读 · 0 评论 -
数据库连接池
一、数据库连接池概念:其实就是一个容器(集合),存放数据库连接的容器。当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。 好处: ①节约资源 ③用户访问高效 实现: ①标准接口:DataSource javax.sql包下的 //获取连接:getConnection()//归还连接,如果连接对象Connection是从连接池中获取的,那么调用 Connection.close()方法原创 2022-04-12 20:10:35 · 155 阅读 · 1 评论 -
Response
一、HTTP协议:请求消息:客户端发送给服务器端的数据 ①请求行 ②请求头 ③请求空行 ④请求体 响应消息:服务器端发送给客户端的数据 ①响应行:协议/版本 响应状态码 状态码描述响应状态码:服务器告诉客户端浏览器本次请求和响应的一个状态。 1. 状态码都是3位数字 2. 分类: 1. 1xx:服务器就收客户端消息,但没有接受完成,等待一段时间后,发送1xx多状态码 2. 2xx:成功。代表:200 3. 3xx:重定向。代表:302(重定向),304(访问缓存原创 2022-04-12 20:07:24 · 102 阅读 · 0 评论 -
python安装与基础
一、Python介绍Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。 Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。 Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。 Python 是面向对象语言: 这意味着Python支持面向对象的风格原创 2022-03-22 11:05:43 · 400 阅读 · 0 评论 -
Linux测试环境部署和项目搭建
学习目标1、掌握Linux系统上安装JDK的安装2、掌握Linux系统上安装Mysql的安装3、掌握Linux系统上安装Tomcat的安装4、掌握Linux中web端项目部署(jenkins.war)一、远程连接工具的使用1. 为什么使用远程连接工具(1)实际应用中服务器一般放在远端(机房)或者云服务上,测试人员不可能直接到现场操作 Linux服务器(2)无法现场操作,所以系统通过远程工具进行连接才可以操作Linux服务器2. 经常使用的远程连接工具有哪些在工作中经常原创 2022-03-18 10:02:35 · 1275 阅读 · 0 评论 -
Linux常用命令及使用
背景服务器版的Linux安装完毕了,但没有图形化界面,我们只能通过控制台去操作系统,我们就要使用类似DOS命令的Linux命令去操作系统,那么下面我们就进行Linux的命令的学习。Linux命令成百上千,课程不能一一涉及,也没有必要一一涉及,根据我们程序员在日常工作中的需求,总结出如下几种供学习。一、 目录切换命令1.1 目录切换命令window中通过图形化界面和鼠标可以任意切换需要进入的目录,但Linux必须通过cd命令切换目录。但在学习cd命令之前,我们有必要分清Linux的目录结构原创 2022-03-17 10:54:32 · 1265 阅读 · 0 评论 -
Linux系统介绍及安装
一、 操作系统介绍1.1 计算机的历史第一代计算机(1946~1958)电子管为基本电子器件;使用机器语言和汇编语言;主要应用于国防和科学计算;运算速度每秒几千次至几万次。第二代计算机(1958~1964)晶体管为主要器件;软件上出现了操作系统和算法语言;运算速度每秒几万次至几十万次。第三代计算机(1964~1971)普遍采用集成电路;体积缩小;运算速度每秒几十万次至几百万次。第四代计算机(1971~ )以大规模集成电路为主要器件;运算速度每秒几百万次至上亿次。1.2原创 2022-03-17 10:49:29 · 510 阅读 · 0 评论 -
数据库之多表设计
一、一对一一张表的一条记录一定只能与另外一张表的一条记录进行对应,反之亦然。有时候,为了业务,或者避免一张表中数据量过大,过复杂,在开发中会进行一对一方式来设计表。二、 一对多(1方建主表(id为主键字段), 多方建外键字段)一个实体的某个数据与另外一个实体的多个数据有关联关系, 一对多的关系在设计的时候,需要设计表的外键。2.1. 班级表和学生表设计部门表和员工表设计image.png2.2.创建数据库表constraint 约束foreign ke原创 2022-03-15 16:31:26 · 11935 阅读 · 0 评论 -
数据库的安装卸载与使用
一、数据库概述1.为什么软件测试工程师还需要学习数据库以及开发方面的知识?测试工程师的目的是找出软件的不足,并告诉开发工程师,出现问题的环境,操作步骤和输入输出数据;优秀的测试工程师,需要告诉开发团队,软件的不足,这类不足会导致什么情况,如何避免,以及如何去修改(这是为什么高级软件测试工程师比开发工程师工资高的原因)。测试工程师在测试软件过程中,不仅仅需要在界面进行操作,还需要检查数据库中的数据是否正确,从而在软件出现问题时候,能够定位到问题原因;学习数据库,掌握数据库操作,增加面试成功机会原创 2022-03-15 09:13:19 · 320 阅读 · 0 评论 -
并发进程之协程
首先,我们需要了解一下协程的概念是什么?协程,微线程,也称用户级线程,再不开辟新的线程的基础上完成多个任务交替执行。并发解决方案:import timedef work1(): while True: print("work1----") time.sleep(1) yield #能让函数暂停也能启动函数def work2(): while True: print("work2----") .原创 2021-12-15 16:19:38 · 508 阅读 · 1 评论 -
并发编程之线程
首先我们要知道有进程才会有线程。那么线程是什么呢?我们举个例子,我们有三个QQ,分别都有自己的联系人QQ1 小明QQ2 小红QQ3 小李线程就是我们想要将小明、小红、小李三个不同QQ的联系人加到同一个请求里!一、线程的诞生分工:进程:从系统分配资源线程:调度分派执行任务进程是系统分配资源的最小单位,线程是CPU调度的最小单位一个进程中默认会有一条主线程。二、线程的创建线程模块介绍threading和thre...原创 2021-12-08 19:35:05 · 243 阅读 · 0 评论 -
并发编程之进程
首先,我们呢需要了解什么是进程呢?狭义:进程就是正在进行的程序广义:是操作系统分配的基本单位程序:是一个没有生命的实体,等待处理器赋予生命,一旦程序有了生命就变成进程了。程序和进程的区别:1、程序是指令和数据的有序集合,其本身没有任何含义,是一个静态的资源。进程是程序在系统中的一次执行过程。2、程序可以作为软件长期存在,进程是有一定的生命周期的。进程三状态:就绪态:运行的条件都已经满足,正在等待CPU执行执行态:CPU正在执行器功能等待态:等待...原创 2021-12-04 09:18:04 · 308 阅读 · 0 评论 -
flask高级应用(三)
一、条件查询1、get查询根据id去查询 单个class BookDetailResource(Resource): def get(self, pk): book = Book.query.get(pk) book_fields = { "id": fields.Integer, "name": fields.String, "sn": fields.String原创 2021-11-04 17:21:07 · 704 阅读 · 0 评论 -
flask高级应用(二)
上节我们学习到当我们创建好模型类后,需要进入python环境,通过db导包,执行db.create_all()就可以迁移生成表,如图:今天,假设我们在昨天的基础上,再添加一个学生表,代码实现如下:from flask import Flaskfrom flask_sqlalchemy import SQLAlchemyfrom flask_restful import request,reqparse,marshal,Resource,fields,Apiapp =...原创 2021-11-03 21:20:09 · 209 阅读 · 0 评论 -
flask高级应用
一、RESTful进阶验证请求数据Flask-RESTful 框架 为我们定义好了一个 reqparse模块,用来 对传入来的数据进行验证。 # 1、创建一个请求解析对象 parser = reqparse.RequestParser() # 2、添加要验证的字段 parser.add_argument("name",type=str,location="args") parser.add_argument("age原创 2021-11-02 23:15:15 · 410 阅读 · 1 评论 -
flask基础应用
首先,什么是flask呢?Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。flask与Django比较:...原创 2021-10-27 12:00:27 · 301 阅读 · 0 评论 -
flask之蓝图
一、蓝图概念蓝图(blueprint):用于实现单个应用的视图、模板、静态文件的集合。蓝图就是模块化处理的类。类似于django中app,子应用。简单来说,蓝图就是一个存储操作路由映射方法的容器,主要用来实现客户端请求和URL相互关联的功能。 在Flask中,使用蓝图可以帮助我们实现模块化应用的功能。flask中,将项目模块化,blueprint,是flask自带的一种开发模式,目的是为了方便开发大型的项目。二、使用蓝图三步走我们以一个简单的例子来实现蓝图三步走吧!首先我们创建一原创 2021-10-27 11:32:21 · 1576 阅读 · 0 评论 -
flask介绍与简单操作
一、介绍Flask的核心在于werkzeug(路由模块),Jinja2模板引擎类比Django:路由、模板、ormFlask要完成功能,依赖于丰富的插件补充:Django与flask区别flask:Flask 确实很“轻”,不愧是 Micro Framework ,从 Django 转向 Flask 的开发者一定会如此感慨,除非二者均为深入使用过 Flask 自由、灵活,可扩展性强,第三方库的选择面广,开发时可以结合自己最喜欢用的轮子,也能结合最流行最强大的 Python 库 入原创 2021-10-22 19:59:29 · 2395 阅读 · 0 评论 -
Django前后端分离之后端接口流程
创建项目 workon django django-admin startproject 项目名 pycharm打开项目 设置解释器 创建子应用(python manage.py startapp 子应用名) 修改配置文件(第二个项目名下面的settings.py) 注册子应用# 注册APP 也就是让Django项目识别 自己的子应用INSTALLED_APPS = [ 'django.contrib.admin', ...原创 2021-10-21 09:42:58 · 558 阅读 · 0 评论 -
初始vue.js及vue指令
一. vue.js介绍MVVM模式介绍M: model模型 V:View视图 VM: ViewMODEl 控制 M V 双向绑定插值表达式介绍及案例讲解插值表达式 {{变量名称}}使⽤: <template><div> <!-- 根标签 --> <p>{{msg}}</p> </div> </template><script>export default { name: '原创 2021-10-17 19:35:29 · 165 阅读 · 0 评论 -
requests介绍与请求
request是python第三方库,用来发送网络请求,常用于爬虫,能够完全满足基于http协议的接口测试。#模块安装与查看:pip install requestspip show requests 我们在用postman测试时,基本步骤如下:接下来我们来做一个requests请求百度首页的简单请求吧!import requests# 请求方法:get# 请求地址:http://www.baidu.com# 响应数据url = "...原创 2021-10-09 19:52:36 · 697 阅读 · 0 评论 -
jwt相关详解
首先jwt是什么呢?Json web token(JWT)是为了网络应用环境间传递声明而执行的一种基于JSON的开发标准(RFC 7519),该token被设计为紧凑且安全的,特别适用于分布式站点的单点登陆(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。其次Jwt、cookie、session之间...原创 2021-10-09 18:59:03 · 2036 阅读 · 0 评论 -
员工管理技术实现与登录接口的token环境变量
员工管理涉及到以下几个功能: 后台登录 添加员工 查询员工 修改员工 删除员工 首先需要明确的是要想实现员工的增删改查操作, 一定是以管理员身份登录的状态下实现的. 所以会先涉及到登录接口. 此时我们应该思考的是, 登录的接口可以实现, 但登录的状态如何保持呢? 以开发的经验, 我们的登录状态是通过token令牌来实现保持的. 所以通过登录接口的访问, 获取到token令牌, 以供后续其他接口测试使用, 即将登录接口的token要...原创 2021-10-08 14:13:18 · 121 阅读 · 0 评论 -
iHRM项目实战
1、初始化工作安装maven拉取项目启动mysql、redis,执行sql脚本运行项目各个模块原创 2021-10-07 20:56:41 · 1717 阅读 · 0 评论 -
系统剖析python的那些基础知识
温故而知新,可以为师矣!最近好像已经有些模糊了python基础的那些小知识,今天我们一起来和九离一起复习一下吧!一、数据库三大主流是什么?答:mysql、redis、MongoDB二、web服务器和三大系统三、为什么pycharm可以运行多种语言脚本?四、列表和元组的区别1、列表和元组底层实现基本一致,只不过列表可变,元组不可变。实质上它们都是数组,由于列表可变也称之为可变数组,而元组不可变,故称之为静态数组。2、元组和列表底层为数组,故由一块一块的连续...原创 2021-09-26 18:56:58 · 58 阅读 · 0 评论 -
软件开发与生命周期
一、软件开发模型:瀑布模型快速原型模型螺旋模型注意:软件测试与软件的开发模式有着紧密的联系,作为一名测试人员,应该充分理解软件的开发模式,以便找准自己在其中的位置,从而发挥自身的价值。1、瀑布模型:特点:是线性模型的一种,每一个阶段只执行一次文档驱动优缺点:优点:开发的各个阶段比较清晰,当前阶段完成后,只需关注后续阶段。缺点:不响应需求的变化风险往往延至后期才显露,失去及早纠正的机会。2、快速原型模型在开发真实系统之前,构...原创 2021-09-26 18:33:59 · 4582 阅读 · 0 评论 -
python自动化介绍
首先我们得了解一下什么是自动化测试?Python自动化就是使用python语言来编写的脚本或者平台(自动化运维平台、自动化测试平台-->devops),实现公司中重复业务的自动化流程。大体的方向分为python自动化测试python自动化运维那么为什么要做自动化测试呢?根据51testing的《中国软件测试从业人员调查报告》,手工测试占到的89% ,相对开发来说,测试的门槛底,薪资普遍较底,所要求的知识面虽然有一定广度,但...原创 2021-09-26 10:47:02 · 5787 阅读 · 0 评论 -
简单编写图书管理系统
首先我们先梳理一下图书管理系统的功能图书管理系统功能梳理一、系统简介:能够对图书进行增删改查二、步骤分析: 1、写菜单 - 图书系统的所有功能 2、实现每一个功能 增加学生:a、将图书的信息加到列表里(列表的每一项是一个字典)--字典的添加 删除学生: 修改学生: 查找学生: 显示所有学生信息: 退出系统:三、结构设计1、主函数--main()2、增加学生def add(原创 2021-09-24 15:11:40 · 2527 阅读 · 1 评论 -
转载cookie/session和jwt的优缺点
浅谈session,cookie,jwt三者共同点:三者都是应用在web中对http无状态协议的补充,达到状态保持cokkie:cookie中的信息是以键值对的形式储存在浏览器中的,而且在浏览器中可以直接看到数据session:session存储在服务器中,然后发送一个cookie存储在浏览器中,cookie中存储的是session_id通过session_id请求服务器可以获取对应的session信息.jwt:由服务器产生加密的json数据包括,header,payload,signature转载 2021-09-24 14:44:35 · 1187 阅读 · 0 评论 -
HTTP状态保持机制
我们都知道http协议的特点是:无连接、无状态。所谓的无状态,就是指服务器不记录用户的信息,对于事务处理没有记忆能力,无法根据之前的状态进行本次的请求处理。那么举个例子,小美在某宝购买了一台电脑,她想要继续购物时,此时服务器需要记住小美的信息,思考一下怎样才能让服务器记住小美的信息呢?这样就引入今天的主题:状态保持状态保持的方法有两种:cookie+session实现和token实现一.cookie+session实现 首先我们来复习一下cookie和session的概念...原创 2021-09-23 16:30:26 · 440 阅读 · 0 评论 -
直观对比django与DRF
首先我们来看我从知乎上保存的有关django与DRF的流程图,思考两者之间的区别与联系!Django就是将数据库的东西通过ORM的映射取出来,通过view文件,按照template文件排出的模板渲染成HTML。当用户请求相应的url时,返回相应的结果。DRF是将数据库的东西通过ORM的映射取出来,通过view和serializers文件绑定REST接口,当前端请求时,返回序列化好的json。那么DRF在Django的基础上做了什么呢?DRF是Django的超集,去掉了模板的部分,提.原创 2021-09-22 19:27:16 · 7134 阅读 · 0 评论 -
函数参数传参方式
1、位置传参:# 姓名 年龄 性别def info(name,age,gender):# 格式化输出# print(f"你的名字是{name},年龄是{age},性别是{gender}") print("你的姓名是%s,年龄是%d,性别是%s" % (name,age,gender))# 调用函数info("安其拉",4,"女") # 你的姓名是安其拉,年龄是4,性别是女info("女",12,"小花") # 你的姓名是女,年龄是12,性别是原创 2021-09-22 10:21:58 · 254 阅读 · 0 评论